sys.dm_hadr_database_replica_cluster_states (Transact-SQL)

Применимо к:SQL Server

Возвращает строку, содержащую представление о работоспособности баз данных доступности в группах доступности AlwaysOn в каждой группе доступности AlwaysOn в кластере отказоустойчивой кластеризации Windows Server (WSFC). Выполните запрос sys.dm_hadr_database_replica_cluster_states , чтобы ответить на следующие вопросы:

  • Все ли базы данных в группе доступности готовы к отработке отказа?

  • Приостановила ли база данных-получатель себя локально после принудительной отработки отказа, подтвердила ли она свое приостановленное состояние на новой первичной реплике?

  • Если первичная реплика в настоящий момент недоступна, выбор какой вторичной реплики в качестве первичной позволит минимизировать потерю данных?

  • Если значение столбца sys.databaselog_reuse_wait_desc имеет AVAILABILITY_REPLICAзначение, какие вторичные реплика в группе доступности удерживают усечение журнала в заданной базе данных-источнике?

Имя столбца Тип данных 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 на сервере.

См. также