sys.dm_hadr_database_replica_cluster_states (Transact-SQL)
Область применения: SQL Server
Возвращает строку, содержащую представление о работоспособности баз данных доступности в группах доступности AlwaysOn в каждой группе доступности AlwaysOn в кластере отказоустойчивой кластеризации Windows Server (WSFC). Выполните запрос sys.dm_hadr_database_replica_cluster_states
, чтобы ответить на следующие вопросы:
Все ли базы данных в группе доступности готовы к отработке отказа?
Приостановила ли база данных-получатель себя локально после принудительной отработки отказа, подтвердила ли она свое приостановленное состояние на новой первичной реплике?
Если первичная реплика в настоящий момент недоступна, выбор какой вторичной реплики в качестве первичной позволит минимизировать потерю данных?
Когда значение столбца
AVAILABILITY_REPLICA
sys.databaselog_reuse_wait_desc
имеет значение, какая вторичная реплика в группе доступности удерживает усечение журнала в заданной базе данных-источнике?
Имя столбца | Тип данных | Description |
---|---|---|
replica_id | uniqueidentifier | Идентификатор реплики доступности в группе доступности. |
group_database_id | uniqueidentifier | Идентификатор базы данных из группы доступности. Этот идентификатор совпадает на всех репликах, к которым присоединена эта база данных. |
database_name | sysname | Имя базы данных, которая принадлежит к группе доступности. |
is_failover_ready | bit | Указывает, синхронизирована ли база данных-получатель с соответствующей базой данных-источником. Может принимать одно из следующих значений: 0 = база данных не помечена как синхронизированная в кластере. База данных не готова к отработку отказа. 1 = база данных помечена в кластере как синхронизированная. База данных готова к отработке отказа. |
is_pending_secondary_suspend | bit | Указывает, ожидает ли база данных приостанова после принудительной отработки отказа. Может принимать одно из следующих значений: 0 = все состояния, кроме HADR_SYNCHRONIZED_SUSPENDED. 1 = HADR_SYNCHRONIZED_SUSPENDED. После завершения принудительной отработки отказа каждая из баз данных-получателей имеет значение HADR_SYNCHONIZED_SUSPENDED и остается в этом состоянии до тех пор, пока новая первичная реплика не получит подтверждение от этой базы данных-получателя в сообщение SUSPEND. NULL = неизвестное состояние (нет кворума). |
is_database_joined | bit | Указывает, присоединена ли база данных на этой реплике доступности к группе доступности. Может принимать одно из следующих значений: 0 = База данных не присоединяется к группе доступности в этой реплике доступности. 1 = база данных присоединена к группе доступности на этой реплике доступности. NULL = неизвестно (в реплике доступности нет кворума). |
recovery_lsn | numeric(25,0) | На первичной реплике это конец журнала транзакций до записи репликой любых новых записей журнала после восстановления или отработки отказа. В первичной реплике строка для данной базы данных-получателя имеет значение, с которым первичная реплика должна синхронизировать вторичную реплику (т. е. для повторной инициализации). В вторичных репликах это значение равно NULL. Каждая вторичная реплика имеет значение MAX или меньшее значение, на которое первичная реплика сообщила вторичной реплике вернуться. |
truncation_lsn | numeric(25,0) | Значение усечения журнала групп доступности AlwaysOn, которое может быть выше локального усечения LSN, если локальное усечение журнала заблокировано (например, операцией резервного копирования). |
Разрешения
Для SQL Server 2019 (15.x) и более ранних версий требуется разрешение VIEW SERVER STATE на сервере.
Для SQL Server 2022 (16.x) и более поздних версий требуется разрешение VIEW SERVER PERFORMANCE STATE на сервере.
См. также
- Динамические представления управления и функции, связанные с группами доступности Always On (Transact-SQL)
- Представления каталога групп доступности Always On (Transact-SQL)
- Отслеживание групп доступности (Transact-SQL)
- Группы доступности AlwaysOn (SQL Server)
- sys.dm_hadr_database_replica_states (Transact-SQL)