sys.availability_replicas (Transact-SQL)

Область применения: SQL Server

Возвращает по строке для каждой реплики доступности, принадлежащей любой группе доступности AlwaysOn в отказоустойчивом кластере WSFC.

Если экземпляр локального сервера не может связаться с отказоустойчивым кластером, например, по причине останова кластера или потери кворума, то будут возвращены строки только для локальных реплик доступности. Эти строки будут содержать только столбцы данных, которые локально кэшируются в метаданные.

Имя столбца Тип данных Description
replica_id uniqueidentifier Уникальный идентификатор реплики.
group_id uniqueidentifier Уникальный идентификатор группы доступности, к которой относится реплика.
replica_metadata_id int Идентификатор локального объекта метаданных для реплик доступности в компоненте Database Engine.
replica_server_name nvarchar(256) Имя сервера экземпляра SQL Server, на котором размещена эта реплика, и для экземпляра, отличного от по умолчанию, его имя экземпляра.
owner_sid varbinary(85) SID (идентификатор безопасности), зарегистрированный на данном экземпляре сервера для внешнего владельца реплики доступности.

Значение NULL для нелокальных реплик доступности.
endpoint_url nvarchar(128) Строковое представление определяемой пользователем конечной точки зеркального отображения базы данных, которое используется соединениями первичной реплики со вторичной для синхронизации данных. Сведения о синтаксисе конечной точки URL-адресов см. в разделе Указание URL-адреса конечной точки при добавлении или изменении реплики доступности (SQL Server).

NULL = не удалось связаться с отказоустойчивым кластером WSFC.

Чтобы изменить эту конечную точку, используйте параметр ENDPOINT_URL инструкции ALTER AVAILABILITY GROUPTransact-SQL.
availability_mode tinyint Режим доступности реплики может быть одним из следующих.

0 | Асинхронная фиксация. Первичная реплика может фиксировать транзакции, не ожидая, пока вторичная реплика запишет запись журнала транзакций на диск.

1 | Синхронная фиксация. Первичная реплика ожидает возможности выполнения фиксации транзакции, пока вторичная реплика записывает транзакцию на диск.

4 | Только конфигурация. Первичная реплика отправляет метаданные конфигурации группы доступности в реплику синхронно. Пользовательские данные не передаются в реплику. Доступно в SQL Server 2017 CU1 и более поздних версиях.

Дополнительные сведения см. в разделе Режимы доступности (группы доступности Always On).
availability_mode_desc nvarchar(60) Описание availability_mode, одно из следующих:

ASYNCHRONOUS_COMMIT

SYNCHRONOUS_COMMIT

CONFIGURATION_ONLY

Чтобы изменить этот режим доступности реплики доступности, используйте параметр AVAILABILITY_MODE инструкции ALTER AVAILABILITY GROUPTransact-SQL.

Невозможно изменить режим доступности реплики на CONFIGURATION_ONLY. Невозможно изменить реплику CONFIGURATION_ONLY на вторичную или первичную реплику.
failover_mode tinyint Режим отработки отказа реплики доступности:

0 | Автоматическая отработка отказа. Реплика является потенциальной целью для автоматического перехода на другой ресурс. Автоматическая отработка отказа поддерживается только в том случае, если для режима доступности задана синхронная фиксация (availability_mode = 1), а реплика доступности в настоящее время синхронизирована.

1 | Отработка отказа вручную. Если переход на вторичную реплику установлен в режим отработки отказа вручную, то он должен быть инициирован вручную администратором базы данных. Тип выполняемой отработки отказа зависит от того, была ли синхронизирована вторичная реплика следующим образом:

Если реплика доступности не была синхронизирована или синхронизация еще выполняется, то может быть выполнена только принудительная отработка отказа (с возможной потерей данных).

Если для режима доступности задана синхронная фиксация (availability_mode = 1), а реплика доступности в настоящее время синхронизирована, отработка отказа вручную без потери данных может произойти.

Чтобы просмотреть свертки работоспособности синхронизации базы данных для каждой базы данных доступности в реплике доступности, используйте столбцы synchronization_health и synchronization_health_desc динамического административного представления sys.dm_hadr_availability_replica_states . Свертка проверяет состояние синхронизации для каждой базы данных доступности, а также режим доступности для ее реплики доступности.

Примечание. Чтобы просмотреть работоспособность синхронизации данной базы данных доступности, запросите synchronization_state столбцы и столбцы synchronization_health динамического административного представления sys.dm_hadr_database_replica_states.
failover_mode_desc nvarchar(60) Описание failover_mode, одно из следующих:

MANUAL

AUTOMATIC

Чтобы изменить режим отработки отказа, используйте параметр FAILOVER_MODE инструкции ALTER AVAILABILITY GROUPTransact-SQL.
session_timeout int Интервал времени ожидания в секундах. Интервал времени ожидания — это максимальное время, в течение которого реплика ожидает получения сообщения от другой реплики перед тем, как соединение между первичной и вторичной репликой будет признано несостоявшимся. Время ожидания сеанса определяет, связаны ли вторичные реплики с первичной.

При обнаружении ошибки соединения с вторичной репликой первичная реплика признает вторичную как NOT_SYNCHRONIZED. При обнаружении ошибки соединения с первичной репликой вторичная реплика просто пытается установить соединение повторно.

Примечание. Время ожидания сеанса не приводит к автоматической отработке отказа.

Чтобы изменить это значение, используйте параметр SESSION_TIMEOUT инструкции ALTER AVAILABILITY GROUPTransact-SQL.
primary_role_allow_connections tinyint Допускается ли наличие всех соединений или только соединений для чтения и записи, одно из следующих значений:

2 = все (по умолчанию)

3 = чтение и запись
primary_role_allow_connections_desc nvarchar(60) Описание primary_role_allow_connections, одно из следующих:

ВСЕ

READ_WRITE
secondary_role_allow_connections tinyint Указывает, могут ли базы данных заданной реплики доступности, играющей роль вторичной (т. е. служащей вторичной репликой), принимать соединения от клиентов. Может принимать одно из следующих значений:

0 = Нет. Не допускаются соединения к базам данных из вторичной реплики, к базам данных также невозможен доступ только для чтения. Этот параметр принимается по умолчанию.

1 = только для чтения. К базам данных из вторичной реплики разрешаются соединения только для чтения. Для всех баз данных в реплике разрешен доступ для чтения.

2= все. К базам данных во вторичной реплике разрешаются все соединения на доступ только для чтения.

Дополнительные сведения см. в разделе Активные вторичные реплики: доступные только для чтения вторичные реплики (группы доступности Always On).
secondary_role_allow_connections_desc nvarchar(60) Описание secondary_role_allow_connections, одно из следующих:

Нет

READ_ONLY

ВСЕ
create_date datetime Дата создания реплики.

NULL = на данном экземпляре сервера реплика отсутствует.
modify_date datetime Дата последнего изменения реплики.

NULL = на данном экземпляре сервера реплика отсутствует.
backup_priority int Представляет определяемый пользователем приоритет выполнения резервного копирования на данной реплике по отношению к другим репликам в той же группе доступности. Значение представляет собой целое число в диапазоне от 0 до 100.

Дополнительные сведения см. в статье Активные вторичные реплики, резервное копирование во вторичных репликах (группы доступности Always On).
read_only_routing_url nvarchar(256) Конечная точка подключения (URL-адрес) реплики доступности, доступной только для чтения. Дополнительные сведения см. в статье Настройка маршрутизации только для чтения в группе доступности (SQL Server).
read_write_routing_url nvarchar(256) SQL Server 2019 (15.x) и более поздних версий. Конечная точка подключения (URL-адрес) для реплики является основной. Дополнительные сведения см. в статье Перенаправление подключения с правами на чтение и запись с вторичной на первичную реплику (группы доступности AlwaysOn).
seeding_mode tinyint Одно из двух значений:

0. Автоматическое

1. Вручную
seeding_mode_desc nvarchar(60) Описывает режим заполнения.

AUTOMATIC

MANUAL

Безопасность

Разрешения

Требует разрешения VIEW ANY DEFINITION на экземпляре сервера.

См. также