sys.dm_hadr_availability_replica_states (Transact-SQL)
ローカル可用性レプリカごとに 1 行のデータと、ローカル レプリカと同じ AlwaysOn 可用性グループに含まれるリモート可用性レプリカごとに 1 行のデータを返します。 各行には、特定の可用性レプリカの状態に関する情報が含まれます。
重要 |
---|
特定の可用性グループ内のすべての可用性レプリカに関する情報を取得するは、プライマリ レプリカをホストしているサーバー インスタンスに対して sys.dm_hadr_availability_replica_states を実行します。 可用性グループのセカンダリ レプリカをホストしているサーバー インスタンスに対してクエリを実行した場合、この動的管理ビューはその可用性グループのローカル情報のみを返します。 |
列名 |
データ型 |
説明 |
||||||||
---|---|---|---|---|---|---|---|---|---|---|
replica_id |
uniqueidentifier |
可用性レプリカの一意識別子。 |
||||||||
group_id |
uniqueidentifier |
可用性グループの一意識別子。 |
||||||||
is_local |
bit |
可用性レプリカがローカルであるかどうか。次のいずれかになります。 0 = プライマリ レプリカがローカル サーバー インスタンスでホストされている可用性グループ内のリモート セカンダリ レプリカを示します。 この値が表示されるのは、プライマリ レプリカの場所だけです。 1 = ローカル可用性レプリカを示します。 セカンダリ レプリカの場合、これはそのレプリカが属する可用性グループに対して使用できる唯一の値です。 |
||||||||
role |
tinyint |
ローカル可用性レプリカまたは接続されているリモート可用性レプリカの現在の AlwaysOn 可用性グループ ロール。次のいずれかになります。 0 = 解決中 1 = プライマリ 2 = セカンダリ AlwaysOn 可用性グループのロールの詳細については、「AlwaysOn 可用性グループの概要 (SQL Server)」を参照してください。 |
||||||||
role_desc |
nvarchar(60) |
role の説明。次のいずれかになります。 RESOLVING PRIMARY SECONDARY |
||||||||
operational_state |
tinyint |
可用性レプリカの現在の操作状態。次のいずれかになります。 0 = フェールオーバー保留 1 = 保留 2 = オンライン 3 = オフライン 4 = 失敗 5 = 失敗、クォーラムなし NULL = レプリカがローカルでない 詳細については、この後の「ロールと操作状態」を参照してください。 |
||||||||
operational_state_desc |
nvarchar(60) |
operational_state の説明。次のいずれかになります。 PENDING_FAILOVER PENDING ONLINE OFFLINE FAILED FAILED_NO_QUORUM NULL |
||||||||
recovery_health |
tinyint |
sys.dm_hadr_database_replica_states 動的管理ビューの database_state 列のロールアップ。次のいずれかになります。
|
||||||||
recovery_health_desc |
nvarchar(60) |
recovery_health の説明。次のいずれかになります。 ONLINE_IN_PROGRESS ONLINE NULL |
||||||||
synchronization_health |
tinyint |
参加しているすべての可用性データベース ("データベース レプリカ") のデータベース同期状態 (synchronization_state) および可用性レプリカの可用性モード (同期コミット モードまたは非同期コミット モード) のロールアップを反映します。 ロールアップには、可用性レプリカ上のデータベースから収集した正常性状態の中で最も悪い状態が反映されます。
|
||||||||
synchronization_health_desc |
nvarchar(60) |
synchronization_health の説明。次のいずれかになります。 NOT_HEALTHY PARTIALLY_HEALTHY HEALTHY |
||||||||
connected_state |
tinyint |
セカンダリ レプリカが現在プライマリ レプリカに接続されているかどうか。次のいずれかになります。
各プライマリ レプリカでは、同じ可用性グループに含まれるすべてのセカンダリ レプリカの接続状態を追跡します。 セカンダリ レプリカでは、プライマリ レプリカの接続状態のみを追跡します。 |
||||||||
connected_state_desc |
nvarchar(60) |
connection_state の説明。次のいずれかになります。 DISCONNECTED CONNECTED |
||||||||
last_connect_error_number |
int |
最後の接続エラーの番号。 |
||||||||
last_connect_error_description |
nvarchar(1024) |
last_connect_error_number のメッセージのテキスト。 |
||||||||
last_connect_error_timestamp |
datetime |
last_connect_error_number のエラーが発生した日時を示すタイムスタンプ。 |
ロールと操作状態
ロール role には、特定の可用性レプリカの状態が反映されます。操作状態 operational_state は、そのレプリカが可用性レプリカのすべてのデータベースに対するクライアント要求を処理する準備ができているかどうかを示します。 次の表には、各ロールの可能な操作状態 (RESOLVING、PRIMARY、および SECONDARY) を示しています。
ロール |
各ロールの操作状態の意味 |
||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
RESOLVING |
可用性レプリカが RESOLVING ロールの場合、可能な操作状態は次のとおりです。
|
||||||||||
PRIMARY |
PRIMARY ロールとして機能している可用性レプリカが現在のプライマリ レプリカです。 可能な操作状態は次のとおりです。
|
||||||||||
SECONDARY |
SECONDARY ロールとして機能している可用性レプリカが現在のセカンダリ レプリカです。 可能な操作状態は次のとおりです。
|
セキュリティ
権限
サーバーに対する VIEW SERVER STATE 権限が必要です。