Reconnectez le serveur de mise en miroir SQL Server 2008 R2


10

Le serveur de basculement a le statut (miroir, déconnecté, en cours de récupération) et le serveur principal a le statut (principal, déconnecté).

Quel est le processus pour reconnecter ces serveurs?


Voici une question connexe qui ressemble beaucoup à celle-ci. Jetez un coup d'œil et voyez si cela aide: Briser et restaurer un miroir Voici quelques étapes rapides pour suspendre ou reprendre la mise en miroir de la base de données Si vous rencontrez toujours des problèmes après avoir lu ces derniers, mettez à jour votre message avec ce que vous avez tous essayé et nous partirons de là.
Aaron

Réponses:


6

Parfois, le redémarrage du point de terminaison en miroir sur le serveur principal résout ce problème.

Pour ce faire, utilisez le T-SQL suivant.

ALTER ENDPOINT Endpoint_Name STATE = STOPPED

ALTER ENDPOINT Endpoint_Name STATE = STARTED

Pour obtenir le nom du point de terminaison.

SELECT * FROM sys.endpoints
WHERE type = 4

Voir KB 2490051 pour plus de détails.


1
J'ai dû redémarrer le point de terminaison sur le serveur miroir comme KB le suggère comme 2e option.
Jan Zahradník

4

Tout d'abord, essayez de les faire se reconnecter avec cette commande T-SQL sur le principal:

ALTER DATABASE AdventureWorks2012 SET PARTNER RESUME;

Si cela échoue, vous avez un problème de communication entre le principal et le miroir, et c'est là que le plaisir commence. Cela peut aller de la connectivité IP à la sécurité sur les points de terminaison en miroir à différentes méthodes de chiffrement. Je recommanderais le livre de Robert Davis Pro SQL Server 2008 Mirroring si vous avez besoin de vous lancer dans un dépannage approfondi.


2

Dans notre cas, nous utilisons l'authentification par certificat pour connecter les points de terminaison en miroir, et le problème était dû au fait que l'un des certificats que les points de terminaison en miroir utilisaient avait expiré.

Vous pouvez vérifier la date d'expiration du certificat impliqué dans l'authentification du noeud final en effectuant une

SELECT * FROM sys.certificates  

Si tel est le cas, vous devrez créer de nouveaux certificats pour tout ce qui a expiré, puis faire ALTER ENDPOINTaprès leur importation.


1

J'ai résolu ce problème par les étapes suivantes, le redémarrage du point de terminaison uniquement sur PRIMARY n'a pas aidé

  1. Le PRIMAIRE:

    SELECT * FROM sys.endpoints WHERE type = 4
    
    ALTER ENDPOINT Mirroring STATE = STOPPED
    
    ALTER ENDPOINT Mirroring STATE = STARTED
  2. Sur MIROIR:

    SELECT * FROM sys.endpoints WHERE type = 4
    
    ALTER ENDPOINT Mirroring STATE = STOPPED
    
    ALTER ENDPOINT Mirroring STATE = STARTED
  3. De retour sur PRIMARY:

    ALTER DATABASE PACXDSite SET PARTNER RESUME;

0

Cas:

Lorsque vous exécutez la commande ci-dessous sur le serveur principal:

alter database  'Database_Name' set partner off

Après avoir exécuté la commande ci-dessus, votre base de données passe en [mirror, disconnected]état sur le serveur miroir.

Résolution:

Étape 1: exécuter la requête ci-dessous sur le miroir

exec sp_resetstatus 'Database_Name'

Étape 2: Après avoir exécuté la commande ci-dessous, votre base de données sera disponible.

restore database 'Database_Name' with recovery

Remarque: l'étape 2 prendra un certain temps à récupérer.


Cela rend le miroir totalement déconnecté et vous devez rétablir la mise en miroir
Alexey F

0

Si "RESUME PARTNER" ne fonctionne pas

ALTER DATABASE AdventureWorks2016 SET PARTNER RESUME;

Je briserais le miroir de cette base de données et le reconfigurerais.

- ÉTAPE 1 SUR PRINCIPAL, briser le miroir pour une base de données

ALTER DATABASE AdventureWorks2016 SET PARTNER OFF;

- ÉTAPE 2 SUR MIROIR, briser le miroir pour une base de données

ALTER DATABASE AdventureWorks2016 SET PARTNER OFF;

- ÉTAPE 3 SUR LE MIROIR

RESTORE LAST FULL BACKUP DATABASE WITH NO RECOVERY 
RESTORE TRAN BACKUP DATABASE WITH NO RECOVERY

- ÉTAPE 4 SUR LE MIROIR

ALTER DATABASE AdventureWorks2016 SET PARTNER = 'TCP://PRINCIPAL.MyDomain.COM:5022';

- ÉTAPE 5 SUR LE PRINCIPAL

ALTER DATABASE AdventureWorks2016 SET PARTNER = 'TCP://MIRROR.MyDomain.COM:5022';

- ÉTAPE 6 SUR PRINCIPAL, si un TÉMOIN a déjà été configuré

ALTER DATABASE AdventureWorks2016 SET WITNESS = 'TCP://WITNESS.MyDomain.COM:5022';

Il convient de mentionner que tout ce qui précède peut être effectué pendant les heures de travail car la base de données principale sera toujours en ligne et disponible.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.