Partager via


Lien de basculement - Azure SQL Managed Instance

S’applique à :Azure SQL Managed Instance

Cet article vous apprend comment basculer une base de données liée entre SQL Server et Azure SQL Managed Instance en utilisant SQL Server Management Studio (SSMS) ou PowerShell à des fins de récupération après sinistre ou de migration.

Prérequis

Pour basculer vos bases de données sur votre réplica secondaire via la liaison, vous devez disposer des conditions préalables suivantes :

Arrêter la charge de travail

Si vous êtes prêt à basculer votre base de données vers le réplica secondaire, arrêtez d'abord toutes les charges de travail des applications sur le réplica principal pendant les heures de maintenance. Cela permet à la réplication de la base de données de rattraper le retard sur le réplica secondaire afin que vous puissiez basculer vers le réplica secondaire sans perte de données. Assurez-vous que vos applications n'engagent pas de transactions sur le réplica principal avant de basculer.

Basculer une base de données

Vous pouvez basculer une base de données liée en utilisant Transact-SQL (T-SQL), SQL Server Management Studio ou PowerShell.

Vous pouvez basculer le lien en utilisant Transact-SQL à partir de SQL Server 2022 CU13 (KB5036432).

Pour effectuer un basculement planifié pour un lien, utilisez la commande T-SQL suivante sur le réplica principal :

ALTER AVAILABILITY GROUP [<DAGname>] FAILOVER

Pour effectuer un basculement forcé, utilisez la commande T-SQL suivante sur le réplica secondaire :

ALTER AVAILABILITY GROUP [<DAGname>] FORCE_FAILOVER_ALLOW_DATA_LOSS

Afficher la base de données après le basculement

Pour SQL Server 2022, si vous avez choisi de conserver le lien, vous pouvez vérifier que le groupe de disponibilité distribué existe sous Groupes de disponibilité dans l’Explorateur d'objets dans SQL Server Management Studio.

Si vous avez supprimé la liaison pendant le basculement, vous pouvez utiliser l'Explorateur d'objets pour confirmer que le groupe de disponibilité distribué n'existe plus. Si vous avez choisi de conserver le groupe de disponibilité, la base de données sera toujours Synchronisée.

Nettoyer après le basculement

Sauf si Supprimer la liaison après un basculement réussi est sélectionné, un basculement avec SQL Server 2022 n’interrompt pas la liaison. Vous pouvez conserver la liaison après le basculement, ce qui laisse le groupe de disponibilité et le groupe de disponibilité distribué actifs. Aucune action supplémentaire n’est requise.

La suppression de la liaison supprime uniquement le groupe de disponibilité distribué et laisse le groupe de disponibilité actif. Vous pouvez décider de conserver le groupe de disponibilité ou de le supprimer.

Si vous décidez de supprimer votre groupe de disponibilité, remplacez la valeur suivante, puis exécutez l’exemple de code T-SQL :

  • <AGName> par le nom du groupe de disponibilité sur SQL Server (utilisé pour créer le lien).
-- Run on SQL Server
USE MASTER
GO
DROP AVAILABILITY GROUP <AGName> 
GO

État incohérent après le basculement forcé

Après un basculement forcé, vous pouvez rencontrer un scénario fractionné dans lequel les deux réplicas ont le rôle principal, laissant la liaison dans un état incohérent. Cela peut se produire si vous basculez vers le réplica secondaire lors d’une urgence, puis que le réplica principal revient en ligne.

Pour résoudre ce problème, consultez Résoudre le scénario fractionné-cerveau.

Pour utiliser le lien :

Pour en savoir plus sur le lien :

Pour d’autres scénarios de réplication et de migration, considérez :