Partager via


Réduire les temps d’arrêt pour les bases de données mises en miroir lors de la mise à niveau des instances de serveur

Lors de la mise à niveau d’instances de serveur vers SQL Server 2014, vous pouvez réduire le temps d’arrêt de chaque base de données mise en miroir à un seul basculement manuel en effectuant une mise à niveau séquentielle, appelée mise à niveau propagée. Une mise à niveau progressive est un processus en plusieurs étapes qui, dans sa forme la plus simple, implique la mise à niveau de l'instance de serveur qui joue actuellement le rôle de serveur miroir dans une session de mise en miroir, de passer manuellement la base de données miroir, de mettre à niveau l'ancien serveur principal et de reprendre la mise en miroir. Dans la pratique, le processus exact dépend du mode d’exploitation et du nombre et de la disposition de la session de mise en miroir s’exécutant sur les instances de serveur que vous mettez à niveau.

Remarque

Pour plus d’informations sur l’exécution d’une mise à niveau propagée pour installer un Service Pack ou un correctif logiciel, consultez Installer un Service Pack sur un système avec un temps d’arrêt minimal pour les bases de données mises en miroir.

Préparation recommandée (meilleures pratiques)

Avant de commencer une mise à niveau propagée, nous vous recommandons de :

  1. Effectuez un basculement manuel pratique sur au moins une de vos sessions de mise en miroir :

    Remarque

    Pour plus d’informations sur le fonctionnement du basculement manuel, consultez Changement de rôle pendant une session de mise en miroir de bases de données (SQL Server).

  2. Protégez vos données :

    1. Effectuez une sauvegarde complète de base de données sur chaque base de données principale :

      Créez une sauvegarde complète de base de données (SQL Server).

    2. Exécutez la commande DBCC CHECKDB sur chaque base de données principale.

Étapes d’une mise à niveau propagée

Les étapes spécifiques d'une mise à niveau continue dépendent du mode de fonctionnement de la configuration de mise en miroir. Toutefois, les étapes de base sont les mêmes.

Remarque

Pour plus d’informations sur les modes d’exploitation, consultez Modes de fonctionnement de la mise en miroir de bases de données.

L’illustration suivante est un organigramme qui montre les étapes de base d’une mise à niveau propagée pour chaque mode d’exploitation. Les procédures correspondantes sont décrites après l’illustration.

Organigramme montrant les étapes d'une mise à niveau progressive

Important

Une instance de serveur peut effectuer différents rôles de mise en miroir (serveur principal, serveur miroir ou témoin) dans des sessions de mise en miroir simultanées. Dans ce cas, vous devrez adapter le processus de mise à niveau progressive de base en conséquence. Pour plus d’informations, consultez Changement de rôle pendant une session de mise en miroir de bases de données (SQL Server).

Pour modifier une session du mode hautes performances en mode haute sécurité

  1. Si une session de mise en miroir s’exécute en mode haute performance, avant d’effectuer une mise à niveau continue, changez le mode de fonctionnement pour haute sécurité sans basculement automatique.

    Important

    Si le serveur miroir est géographiquement distant du serveur principal, une mise à niveau propagée peut être inappropriée.

Pour supprimer un témoin d’une session

  1. Si une session de mise en miroir implique un témoin, nous vous recommandons de supprimer le témoin avant d’effectuer une mise à niveau progressive. Sinon, lorsque l’instance de serveur miroir est mise à niveau, la disponibilité de la base de données dépend du témoin qui reste connecté à l’instance de serveur principal. Après avoir supprimé un témoin, vous pouvez le mettre à niveau à tout moment pendant le processus de mise à niveau continue, sans risquer de temps d’arrêt de la base de données.

Pour effectuer la mise à niveau progressive

  1. Pour réduire le temps d’arrêt, nous vous recommandons de commencer la mise à jour progressive en mettant à jour tout partenaire de mise en miroir qui est actuellement serveur de miroir dans toutes ses sessions de mise en miroir. Vous devrez peut-être mettre à jour plusieurs instances de serveur à ce stade.

    Remarque

    Un témoin peut être mis à niveau à tout moment dans le processus de mise à niveau propagée. Par exemple, si une instance de serveur est un serveur miroir dans la session 1 et qu’elle est témoin dans la session 2, vous pouvez mettre à niveau l’instance de serveur maintenant.

    L’instance de serveur à mettre à niveau dépend d’abord de la configuration actuelle de vos sessions de mise en miroir, comme suit :

    • Si une instance de serveur est déjà le serveur miroir dans toutes ses sessions de mise en miroir, mettez à niveau l’instance de serveur vers la nouvelle version.

    • Si toutes vos instances de serveur sont actuellement le serveur principal dans toutes les sessions de mise en miroir, sélectionnez une instance de serveur à mettre à niveau en premier. Ensuite, procédez à un basculement manuel de chacune de ses bases de données principales et mettez à niveau l'instance de serveur correspondante.

    Après avoir été mise à niveau, une instance de serveur rejoint automatiquement chacune de ses sessions de mise en miroir.

  2. Pour chaque session de mise en miroir dont l’instance de serveur miroir vient d’être mise à niveau, attendez que la session se synchronise. Ensuite, connectez-vous à l’instance du serveur principal et effectuez un basculement manuel de la session. Lors du basculement, l’instance de serveur mise à niveau devient le serveur principal de cette session, et l’ancien serveur principal devient le serveur miroir.

    L’objectif de cette étape est qu’une autre instance de serveur devienne le serveur miroir dans chaque session de mise en miroir dans laquelle elle est partenaire.

    Restrictions après le basculement vers une instance de serveur mise à niveau.

    Après le basculement d’une instance de serveur antérieure vers une instance de serveur SQL Server 2014, la session de base de données est suspendue. Elle ne peut pas être reprise tant que l’autre partenaire n’a pas été mis à niveau. Toutefois, le serveur principal accepte toujours les connexions et autorise l’accès aux données et les modifications sur la base de données principale.

    Remarque

    L’établissement d’une nouvelle session de mise en miroir nécessite que les instances de serveur exécutent toutes la même version de SQL Server.

  3. Après le basculement, nous vous recommandons d'exécuter la commande DBCC CHECKDB sur la base de données principale.

  4. Mettez à niveau chaque instance de serveur qui est désormais le serveur miroir dans toutes les sessions de mise en miroir dans lesquelles il est partenaire. Vous devrez peut-être mettre à jour plusieurs serveurs à ce stade.

    Important

    Dans une configuration de mise en miroir complexe, une instance de serveur peut toujours être le serveur principal d’origine dans une ou plusieurs sessions de mise en miroir. Répétez les étapes 2 à 4 pour ces instances de serveur jusqu’à ce que toutes les instances impliquées soient mises à niveau.

  5. Reprendre la session de mise en miroir.

    Remarque

    Le basculement automatique ne fonctionnera pas tant que le témoin n’a pas été mis à niveau et réintégré à la session de mirroring.

  6. Mettez à niveau toute instance de serveur restante qui est le témoin dans toutes ses sessions de mise en miroir. Une fois qu’un témoin mis à niveau rejoint une session de mise en miroir, le basculement automatique devient à nouveau possible. Vous devrez peut-être mettre à jour plusieurs serveurs à ce stade.

Pour retourner une session en mode hautes performances

  1. Si vous le souhaitez, revenez en mode hautes performances à l’aide de l’une des méthodes suivantes :

    • Dans SQL Server Management Studio : modifiez l’option mode d’exploitationen hautes performances (asynchrone) à l’aide de la page mise en miroir de la boîte de dialogue Propriétés de la base de données .

    • Dans Transact-SQL : utilisez ALTER DATABASEpour définir la sécurité des transactions sur OFF.

Pour ajouter un témoin dans une session de mise en miroir

  1. Si vous le souhaitez, en mode haute sécurité, rétablissez le témoin à chaque session de mise en miroir.

    Pour renvoyer un témoin

Voir aussi

Mise en miroir de bases de données ALTER DATABASE (Transact-SQL)
BACKUP (Transact-SQL)
Afficher l’état d’une base de données mise en miroir (SQL Server Management Studio)
Mise en miroir de bases de données (SQL Server)
Installer un Service Pack sur un système avec un temps d’arrêt minimal pour les bases de données mises en miroir
Basculement de rôle durant une session de mise en miroir de bases de données (SQL Server)
Forcer le service dans une session de mise en miroir de bases de données (Transact-SQL)
Démarrer le moniteur de mise en miroir de bases de données (SQL Server Management Studio)
Modes de fonctionnement de la mise en miroir de bases de données