AlwaysOn : Ajouter manuellement un nœud réplica avec chemin de sauvegarde et identifiants personnalisés

L’assistant des groupes de disponibilité AlwaysOn de SQL Server Management Studio couvre bien la plupart des scénarios courants — mais il a une limitation importante : il ne peut pas se faire passer pour un utilisateur personnalisé pour accéder à un chemin de sauvegarde distant avec des identifiants non par défaut. Quand votre partage de sauvegarde nécessite un compte de domaine spécifique ou une combinaison nom d’utilisateur/mot de passe personnalisée, vous devez effectuer les étapes initiales de sauvegarde et de restauration manuellement, puis utiliser l’assistant en mode Join only.

Cette procédure automatise ce travail manuel : elle monte le chemin de sauvegarde avec des identifiants personnalisés, crée une sauvegarde complète plus deux sauvegardes de journal de transactions de chaque base de données protégée par AlwaysOn, et génère (ou exécute) les instructions de restauration correspondantes sur le nouveau nœud secondaire.

Prérequis

  • xp_cmdshell doit être activé sur les nœuds primaire et secondaire (utilisé pour le montage/démontage net use)
  • Le compte de service SQL Server a besoin des permissions appropriées sur le chemin de sauvegarde de destination
  • Les bases de données doivent être en mode de récupération FULL pour supporter les sauvegardes de journaux
  • Exécutez le script primaire sur le nœud primaire, le script secondaire sur le nouveau nœud secondaire

Étape 1 : Sauvegarder toutes les bases AlwaysOn (exécuter sur le nœud primaire)

Le script monte le chemin de sauvegarde distant, itère sur toutes les bases de données actuellement protégées par un groupe de disponibilité AlwaysOn, et génère (ou exécute) une sauvegarde complète + deux sauvegardes de journaux par base de données. Définissez @runnow = 'YES' pour exécuter immédiatement, ou laissez-le à 'NO' pour prévisualiser d’abord les instructions générées.

-- EXÉCUTER SUR LE NŒUD PRIMAIRE

-- CONFIGUREZ ICI ----------------------------------------
DECLARE @destpath    NVARCHAR(255)  = 'CHEMIN_DISTANT_DIR'
DECLARE @runnow      NVARCHAR(3)    = 'NO'   -- 'YES' pour exécuter, 'NO' pour prévisualiser
DECLARE @mount_cmd   NVARCHAR(4000) = 'net use CHEMIN_DISTANT /user:monutilisateur monmotdepasse'
DECLARE @dismount_cmd NVARCHAR(4000) = 'net use CHEMIN_DISTANT /delete'
-- -------------------------------------------------------

Étape 2 : Restaurer sur le nœud secondaire

Après avoir exécuté le script de sauvegarde sur le primaire, utilisez les instructions RESTORE générées sur le nouveau nœud secondaire, avec WITH NORECOVERY pour chaque base de données. Une fois toutes les restaurations terminées, utilisez l’assistant SSMS en mode Join only pour ajouter le nœud au groupe de disponibilité.