Salut la communauté !

J'ai un dilemme.
Voici ce qu'un client m'a demandé :

- 2 machines sous Windows Server 2012 R2
- SQL Server 2012 sur les deux machines
- Réplication équivalent Master-Master pour une bdd.
- Failover en cas de crash.

D'après ce que j'ai vu, l'équivalent Master-Master sur SQL Server est la topologie Peer-To-Peer. Ca, c'est bon, les deux bases de données répliquent l'une sur l'autre à l'heure actuel.

Pour le failover, j'ai vu 2 solutions :

- AlwaysOn Availability :
Le problème pour cette solution est qu'elle nécessite l'AD DS, et donc forcément, un Domain Controller. Hors, après moult tests infructueux, j'ai compris qu'un Domain Controller ne pouvait pas être un nœud de failover cluster ( https://support.microsoft.com/en-us/kb/2795523 ), hors, je n'ai que 2 serveurs (le client refusera l'achat d'une troisième machine), donc le Domain Controller doit forcément être l'un d'entre eux. Du coup, j'ai laissé tomber cette solution pour l'instant.

- Mirroring :
Cette solution pose de multiples problèmes. D'abord, elle est incompatible avec la topologie Peer-To-Peer (https://msdn.microsoft.com/en-us/library/ms151799.aspx) ce qui ne me poserait pas de problème si elle répliquait des données dans un équivalent Master-Master, mais cela ne semble pas être le cas (ou j'ai mal lu ?). Ensuite, il faut un serveur témoin pour activer l'option "failover automatique" soit activé, cependant, si je précise que le témoin est l'un des deux serveurs, si c'est celui-ci qui crash, le failover fonctionnera-t-il quand même ? Et enfin, il semble que le Mirroring soit voués à disparaitre dans les prochaines versions de SQL Server, ce qui n'est pas top pour le client.

Du coup, coincé, je viens vers vous en espérant que des experts me puisse me sauver

A noter que je suis moi-même plutôt débutant en SQL Server, voir en Windows Server, donc si vous venez de lire une énormité, toutes mes plus plates excuses !