sys.availability_replicas (Transact-SQL)
S'applique à : SQL Server
Retourne une ligne pour chacun des réplicas de disponibilité qui appartiennent à un groupe de disponibilité Always On dans le cluster de basculement WSFC.
Si l'instance de serveur locale ne peut pas communiquer avec le cluster de basculement WSFC, par exemple parce que le cluster est fermé ou le quorum a été perdu, seules les lignes des réplicas de disponibilité locaux sont retournées. Ces lignes contiendront uniquement les colonnes de données qui sont mises en cache localement dans les métadonnées.
Nom de la colonne | Type de données | Description |
---|---|---|
replica_id | uniqueidentifier | ID unique du réplica. |
group_id | uniqueidentifier | ID unique du groupe de disponibilité auquel le réplica appartient. |
replica_metadata_id | int | ID de l'objet des métadonnées locales pour les réplicas de disponibilité du moteur de base de données. |
replica_server_name | nvarchar (256) | Nom de serveur de l'instance de SQL Server qui héberge ce réplica et, pour une instance non définie par défaut, son nom d'instance. |
owner_sid | varbinary(85) | Identificateur de sécurité (SID) enregistré sur cette instance de serveur pour le propriétaire externe de ce réplica de disponibilité. NULL pour les réplicas de disponibilité non locaux. |
endpoint_url | nvarchar(128) | Représentation de chaîne du point de terminaison de mise en miroir de bases de données spécifié par l'utilisateur, qui est utilisé par les connexions entre les réplicas principal et secondaire pour la synchronisation des données. Pour plus d’informations sur la syntaxe des URL de point de terminaison, consultez Spécifier l’URL de point de terminaison lors de l’ajout ou lors de la modification d’un réplica de disponibilité (SQL Server). NULL = Impossible de communiquer avec le cluster de basculement WSFC. Pour modifier ce point de terminaison, utilisez l’option ENDPOINT_URL de l’instruction Transact-SQL ALTER AVAILABILITY GROUP. |
availability_mode | tinyint | Mode de disponibilité du réplica, parmi : 0 | Validation asynchrone. Le réplica principal peut valider des transactions sans attendre que le réplica secondaire écrive le journal sur le disque. 1 | Validation synchrone. Le réplica principal attend pour valider une transaction donnée que le réplica secondaire ait écrit la transaction sur le disque. 4 | Configuration uniquement. Le réplica principal envoie les métadonnées de configuration du groupe de disponibilité au réplica de manière synchrone. Les données utilisateur ne sont pas transmises au réplica. Disponible dans SQL Server 2017 CU1 et versions ultérieures. Pour plus d’informations, consultez Modes de disponibilité (Groupes de disponibilité Always On). |
availability_mode_desc | nvarchar(60) | Description de availability_mode, l’une des suivantes : ASYNCHRONOUS_COMMIT SYNCHRONOUS_COMMIT CONFIGURATION_ONLY Pour modifier ce mode de disponibilité d’un réplica de disponibilité, utilisez l’option AVAILABILITY_MODE de l’instruction Transact-SQL ALTER AVAILABILITY GROUP. Vous ne pouvez pas modifier le mode de disponibilité d’un réplica en CONFIGURATION_ONLY. Vous ne pouvez pas modifier un réplica CONFIGURATION_ONLY en réplica secondaire ou principal. |
failover_mode | tinyint | Mode de basculement du réplica de disponibilité, l’un des éléments suivants : 0 | Basculement automatique. Le réplica est une cible potentielle des basculements automatiques. Le basculement automatique est pris en charge uniquement si le mode de disponibilité est défini sur la validation synchrone (availability_mode = 1) et que le réplica de disponibilité est actuellement synchronisé. 1 | Basculement manuel. Un basculement vers un réplica secondaire qui est manuel doit être initialisé manuellement par l'administrateur de la base de données. Le type de basculement exécuté dépendra de la synchronisation du réplica secondaire, à savoir : Si le réplica de disponibilité n'est pas synchronisé ou si sa synchronisation est en cours, seul le basculement forcé (avec perte de données) est possible. Si le mode de disponibilité est défini sur la validation synchrone (availability_mode = 1) et que le réplica de disponibilité est actuellement synchronisé, le basculement manuel sans perte de données peut se produire. Pour afficher un cumul de l’intégrité de la synchronisation de base de données de chaque base de données de disponibilité dans un réplica de disponibilité, utilisez les colonnes synchronization_health et synchronization_health_desc de la vue de gestion dynamique sys.dm_hadr_availability_replica_states . La récupération prend en compte l'état de synchronisation de chaque base de données de disponibilité et le mode de disponibilité de son réplica de disponibilité. Remarque : Pour afficher l’intégrité de synchronisation d’une base de données de disponibilité donnée, interrogez les colonnes synchronization_state et synchronization_health de la vue de gestion dynamique sys.dm_hadr_database_replica_states . |
failover_mode_desc | nvarchar(60) | Description de failover_mode, l’une des suivantes : MANUAL AUTOMATIC Pour modifier le mode de basculement, utilisez l’option FAILOVER_MODE de l’instruction Transact-SQL ALTER AVAILABILITY GROUP. |
session_timeout | int | Délai d'attente en secondes. Le délai d’expiration est le temps maximum pendant lequel le réplica attend de recevoir un message d’un autre réplica avant de considérer que la connexion entre les réplicas principal et secondaire a échoué. Le délai d'expiration de session détecte si les réplicas secondaries sont connectés au réplica primaire. En cas de détection d’un échec de connexion avec un réplica secondaire, le réplica principal considère que le réplica secondaire présente l’état NOT_SYNCHRONIZED. En cas de détection d'un échec de connexion avec le réplica principal, un réplica secondaire tente simplement de se reconnecter. Remarque : Les délais d’expiration de session ne provoquent pas de basculements automatiques. Pour modifier cette valeur, utilisez l’option SESSION_TIMEOUT de l’instruction Transact-SQL ALTER AVAILABILITY GROUP. |
primary_role_allow_connections | tinyint | Indique si la disponibilité permet toutes les connexions ou uniquement les connexions en lecture-écriture, parmi : 2 = Toutes (valeur par défaut) 3 = Lecture-écriture |
primary_role_allow_connections_desc | nvarchar(60) | Description de primary_role_allow_connections, l’une des suivantes : ALL READ_WRITE |
secondary_role_allow_connections | tinyint | Si un réplica de disponibilité qui revêt le rôle secondaire (autrement dit, un réplica secondaire) peut accepter les connexions des clients, les options suivantes sont disponibles : 0 = Non. Aucune connexion n'est autorisée aux bases de données dans le réplica secondaire et les bases de données ne sont pas disponibles pour un accès en lecture. Il s’agit du paramètre par défaut. 1 = Lecture seule. Seules les connexions aux bases de données en lecture seule sont autorisées dans le réplica secondaire. Toutes les bases de données du réplica sont disponibles pour l'accès en lecture. 2 = Toutes. Toutes les connexions sont autorisées aux bases de données dans le réplica secondaire pour un accès en lecture seule. Pour plus d’informations, consultez Secondaires actifs : réplicas secondaires accessibles en lecture (Groupes de disponibilité Always On). |
secondary_role_allow_connections_desc | nvarchar(60) | Description de secondary_role_allow_connections, l’une des suivantes : NON READ_ONLY ALL |
create_date | datetime | Date de création du réplica. NULL = Le réplica ne se trouve pas sur cette instance de serveur. |
modify_date | datetime | Date de la dernière modification du réplica. NULL = Le réplica ne se trouve pas sur cette instance de serveur. |
backup_priority | int | Représente la priorité spécifiée par l'utilisateur pour l'exécution des sauvegardes sur ce réplica par rapport aux autres réplicas dans le même groupe de disponibilité. La valeur est un entier compris entre 0 et 100. Pour plus d’informations, consultez Secondaires actifs : sauvegarde sur les réplicas secondaires (Groupes de disponibilité Always On). |
read_only_routing_url | nvarchar (256) | Point de terminaison de connectivité (URL) du réplica de disponibilité en lecture seule. Pour plus d’informations, consultez Configurer le routage en lecture seule pour un groupe de disponibilité (SQL Server). |
read_write_routing_url | nvarchar (256) | SQL Server 2019 (15.x) et versions ultérieures. Point de terminaison de connectivité (URL) pour lequel le réplica est le réplica principal. Pour plus d’informations, consultez Redirection de connexion en lecture/écriture depuis un réplica secondaire vers le réplica principal (groupes de disponibilité Always On). |
seeding_mode | tinyint | Valeurs possibles : 0 : Automatique 1 : Manuel |
seeding_mode_desc | nvarchar(60) | Décrit le mode d’amorçage. AUTOMATIC MANUAL |
Sécurité
autorisations
Nécessite l'autorisation VIEW ANY DEFINITION sur l'instance de serveur.