sys.availability_groups (Transact-SQL)

適用対象: はいSQL Server (サポートされているすべてのバージョン)

SQL Server のローカル インスタンスが可用性レプリカをホストしている各可用性グループの行を返します。 各行には、可用性グループ メタデータのキャッシュされたコピーが含まれます。

列名 データ型 説明
group_id uniqueidentifier 可用性グループの一意識別子 (GUID)。
name sysname 可用性グループの名前。 これはユーザー指定の名前であり、Windows Server フェールオーバー クラスター (WSFC) 内で一意であることが必要です。
resource_id nvarchar(40) WSFC クラスター リソースのリソース ID。
resource_group_id nvarchar(40) 可用性グループの WSFC クラスター リソース グループのリソース グループ ID。
failure_condition_level int 自動フェールオーバーをトリガーする必要があるユーザー定義のエラー条件レベル。この表のすぐ下の表に示す整数値の 1 つ。

エラー状態レベルの範囲は 1 ~ 5 で、レベル 1 が最も制限が緩く、レベル 5 が最も制限の厳しい指定です。 任意の状態レベルは、それより制限が緩いすべてのレベルを含みます。 したがって、最も厳しい状態レベル 5 にはそれより制限が緩い状態レベル (1 から 4) が含まれ、レベル 4 にはレベル 1 から 3 が含まれます。以下同様です。

この値を変更するには、ALTER AVAILABILITY GROUP FAILURE_CONDITION_LEVELオプションを使用 Transact-SQL します。
health_check_timeout int サーバー インスタンスが低速または応答していないと見なされる前に、sp_server_diagnostics システム ストアド プロシージャがサーバー正常性情報を返すのを待つ時間 (ミリ秒単位)。 既定値は 30000 ミリ秒 (30 秒) です。

この値を変更するには、ALTER AVAILABILITY GROUP HEALTH_CHECK_TIMEOUTオプションを使用 Transact-SQL します。
automated_backup_preference tinyint この可用性グループ内の可用性データベースでバックアップを実行する場合に推奨される場所。 指定できる値とその説明を次に示します。



0: プライマリ。 バックアップは常にプライマリ レプリカで実行する必要があります。

1: セカンダリのみ。 セカンダリ レプリカでバックアップを実行する方が望ましい。

2: セカンダリを優先します。 セカンダリ レプリカでバックアップを実行することが望ましいが、バックアップ操作に使用できるセカンダリ レプリカがない場合は、プライマリ レプリカでバックアップを実行できます。 これは既定の動作です。

3: 任意のレプリカ。 プライマリ レプリカとセカンダリ レプリカの間でバックアップが実行されるかどうかに関する優先設定はありません。



詳細については、「アクティブなセカンダリ:セカンダリ レプリカでのバックアップ (Always On 可用性グループ)」を参照してください。
automated_backup_preference_desc nvarchar(60) 次のいずれかの automated_backup_preference の説明。

PRIMARY

SECONDARY_ONLY

SECONDARY

NONE
version smallint フェールオーバー クラスターに格納されている可用性グループ メタデータWindowsバージョン。 このバージョン番号は、新機能が追加された時点で増分されます。
basic_features bit これが Basic 可用性グループであるかどうかを指定します。 詳細については、「基本的な可用性グループ (AlwaysOn 可用性グループ)」を参照してください。
dtc_support bit この可用性グループに対して DTC のサポートが有効になっているかどうかを指定します。 CREATE AVAILABILITY GROUP DTC_SUPPORT オプションによって、この 設定が制御されます。
db_failover bit 可用性グループがデータベースの正常性状態のフェールオーバーをサポートするかどうかを指定します。 CREATE AVAILABILITY GROUP DB_FAILOVER オプションによって、この 設定が制御されます。
is_distributed bit これが分散可用性グループであるかどうかを指定します。 詳細については、「Distributed Availability Groups (Always On Availability Groups) (分散型可用性グループ (Always On 可用性グループ))」を参照してください。
cluster_type tinyint 0: Windows サーバー フェールオーバー クラスター

1: 外部クラスター (Linux Pacemaker など)

2: なし
cluster_type_desc nvarchar(60) クラスターの種類のテキストの説明
required_synchronized_secondaries_to_commit int コミットを完了するために同期状態である必要があるセカンダリ レプリカの数
sequence_number bigint 可用性グループの構成シーケンスを識別します。 可用性グループのプライマリ レプリカがグループの構成を更新するたび、増分的に増加します。
is_contained bit 1: 高可用性用に構成されたビッグ データ クラスター マスター インスタンス。

0: その他すべて。

エラー条件レベルの値

次の表では、 列のエラー状態レベルについて failure_condition_levelします。

エラー状態
1 次のいずれかが発生した場合に自動フェールオーバーを開始する必要があることを指定します。



- サービス SQL Server がダウンしています。

-サーバーインスタンスから ACK を受信しないため、WSFC フェールオーバークラスターに接続するための可用性グループのリースが期限切れになります。 詳細については、「How It Works:SQL Server Always On Lease Timeout」 (動作方法: SQL Server Always On のリース タイムアウト) を参照してください。
2 次のいずれかが発生した場合に自動フェールオーバーを開始する必要があることを指定します。



-のインスタンスが SQL Server クラスターに接続しておらず、可用性グループのユーザー指定の health_check_timeout しきい値を超えています。

-可用性レプリカがエラー状態になっています。
3 孤立したスピンロック、重大な書き込みアクセス違反、ダンプが多すぎるなどの重大な SQL Server 内部エラーが発生した場合に自動フェールオーバーを開始する必要があることを指定します。

これが既定値です。
4 SQL Server 内部リソース プールに永続的なメモリ不足の状態があるなど、中程度の SQL Server 内部エラーが発生した場合に自動フェールオーバーを開始する必要があることを指定します。
5 以下のような任意の修飾エラー状態に対して自動フェールオーバーを開始する必要があることを指定します。



-SQL エンジンのワーカースレッドの枯渇。

-解決不可能なデッドロックの検出。

セキュリティ

アクセス許可

サーバー インスタンスに対する VIEW ANY DEFINITION 権限が必要です。

参照

sys.availability_replicas (Transact-SQL)
AlwaysOn 可用性グループ (SQL Server)
可用性グループの監視 (Transact-SQL)
可用性グループの監視 (Transact-SQL)