sys.availability_replicas (Transact-SQL)sys.availability_replicas (Transact-SQL)

適用対象: ○SQL Server XAzure SQL Database XAzure SQL Data Warehouse XParallel Data WarehouseAPPLIES TO: yesSQL Server noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

WSFC フェールオーバー クラスター内の AlwaysOn 可用性グループに属している各可用性レプリカに対する行を返します。Returns a row for each of the availability replicas that belong to any Always On availability group in the WSFC failover cluster.

たとえばクラスターがダウンしたりクォーラムが失われたりしたために、ローカル サーバー インスタンスが WSFC フェールオーバー クラスターと通信できない場合は、ローカル可用性レプリカの行だけが返されます。If the local server instance is unable to talk to the WSFC failover cluster, for example because the cluster is down or quorum has been lost, only rows for local availability replicas are returned. これらの行には、メタデータ内にローカルにキャッシュされているデータの列だけが含まれます。These rows will contain only the columns of data that are cached locally in metadata.

列名Column name データ型Data type 説明Description
replica_idreplica_id uniqueidentifieruniqueidentifier レプリカの一意の ID。Unique ID of the replica.
group_idgroup_id uniqueidentifieruniqueidentifier レプリカが属している可用性グループの一意の ID。Unique ID of the availability group to which the replica belongs.
replica_metadata_idreplica_metadata_id intint データベース エンジンの可用性レプリカのローカル メタデータ オブジェクトの ID。ID for the local metadata object for availability replicas in the Database Engine.
replica_server_namereplica_server_name nvarchar (256)nvarchar(256) このレプリカをホストし、既定ではないインスタンスの場合はレプリカのインスタンス名もホストしている、 SQL ServerSQL Server のインスタンスのサーバー名。Server name of the instance of SQL ServerSQL Server that is hosting this replica and, for a non-default instance, its instance name.
owner_sidowner_sid varbinary(85)varbinary(85) このサーバー インスタンスに登録されている、この可用性レプリカの外部所有者のセキュリティ ID (SID)。Security identifier (SID) registered to this server instance for the external owner of this availability replica.

非ローカル可用性レプリカの場合は NULL です。NULL for non-local availability replicas.
endpoint_urlendpoint_url nvarchar(128)nvarchar(128) データ同期のためにプライマリとセカンダリのレプリカの間の接続で使用される、ユーザー指定のデータベース ミラーリング エンドポイントの文字列表現。String representation of the user-specified database mirroring endpoint that is used by connections between primary and secondary replicas for data synchronization. エンドポイント URL の構文の詳細については、「可用性レプリカを追加または変更する場合のエンドポイント URL の指定 (SQL Server)」を参照してください。For information about the syntax of endpoint URLs, see Specify the Endpoint URL When Adding or Modifying an Availability Replica (SQL Server).

NULL = WSFC フェールオーバー クラスターと通信できません。NULL = Unable to talk to the WSFC failover cluster.

このエンドポイントを変更する、ENDPOINT_URL オプションを使用して、 ALTER AVAILABILITY GROUP Transact-SQLTransact-SQLステートメント。To change this endpoint, use the ENDPOINT_URL option of ALTER AVAILABILITY GROUPTransact-SQLTransact-SQL statement.
availability_modeavailability_mode tinyinttinyint レプリカの可用性モード。次のいずれかです。The availability mode of the replica, one of:

0|非同期コミットします。0 | Asynchronous commit. プライマリ レプリカは、セカンダリがログをディスクに書き込むのを待機することなくトランザクションをコミットできます。The primary replica can commit transactions without waiting for the secondary to write the log to disk.

1|同期コミットします。1 | Synchronous commit. プライマリ レプリカは、セカンダリ レプリカがトランザクションをディスクに書き込むまで、特定のトランザクションのコミットを待機します。The primary replica waits to commit a given transaction until the secondary replica has written the transaction to disk.

4|構成のみです。4 | Configuration only. プライマリ レプリカは、同期的に、レプリカを可用性グループ構成メタデータを送信します。The primary replica sends availability group configuration metadata to the replica synchronously. ユーザー データは、レプリカに送信されません。User data is not transmitted to the replica. SQL Server 2017 CU1 以降を使用できます。Available in SQL Server 2017 CU1 and later.

詳細については、「可用性モード (Always On 可用性グループ)」を参照してください。For more information, see Availability Modes (Always On Availability Groups).
availability_mode_descavailability_mode_desc nvarchar(60)nvarchar(60) 説明可用性_モード、1 つの。Description of availability_mode, one of:

非同期_コミットASYNCHRONOUS_COMMIT

同期_コミットSYNCHRONOUS_COMMIT

構成_のみCONFIGURATION_ONLY

この可用性レプリカの可用性モードを変更するには、AVAILABILITY_MODE オプションを使用してALTER AVAILABILITY GROUP Transact-SQLTransact-SQLステートメント。To change this the availability mode of an availability replica, use the AVAILABILITY_MODE option of ALTER AVAILABILITY GROUPTransact-SQLTransact-SQL statement.

構成に、レプリカの可用性モードを変更することはできません_のみです。You cannot change the availability mode of a replica to CONFIGURATION_ONLY. 構成を変更することはできません_セカンダリまたはプライマリ レプリカに専用のレプリカ。You cannot change a CONFIGURATION_ONLY replica to a secondary or primary replica.
failover_modefailover_mode tinyinttinyint フェールオーバー モード可用性レプリカのいずれかの。The failover mode of the availability replica, one of:

0|自動フェールオーバー。0 | Automatic failover. レプリカは、自動フェールオーバーの潜在的なターゲットです。The replica is a potential target for automatic failovers. 同期コミット可用性モードが設定されている場合にのみ、自動フェールオーバーがサポートされて (可用性_モード= 1) 可用性レプリカが現在同期されています。Automatic failover is supported only if the availability mode is set to synchronous commit (availability_mode = 1) and the availability replica is currently synchronized.

1|手動フェールオーバー。1 | Manual failover. 手動フェールオーバーに設定するセカンダリ レプリカへのフェールオーバーは、データベース管理者が手動で開始する必要があります。A failover to a secondary replica set to manual failover must be manually initiated by the database administrator. 実行されるフェールオーバーの種類はかどうか、セカンダリ レプリカが同期されて、次のように異なります。The type of failover that is performed will depend on whether the secondary replica is synchronized, as follows:

可用性レプリカが同期していない場合、またはまだ同期を行っている場合は、強制フェールオーバーのみが可能です (データが失われる可能性があります)。If the availability replica is not synchronizing or is still synchronizing, only forced failover (with possible data loss) can occur.

同期コミット可用性モードが設定されている場合 (可用性_モード= 1)、可用性レプリカが現在同期されて、手動フェールオーバー データの損失が発生する可能性がないとします。If the availability mode is set to synchronous commit (availability_mode = 1) and the availability replica is currently synchronized, manual failover without data loss can occur.

可用性レプリカのすべての可用性データベースのデータベースの同期のヘルスのロールアップを表示する、同期_ヘルス同期_正常性_descの列、 sys.dm_hadr_availability_replica_states動的管理ビュー。To view a rollup of the database synchronization health of every availability database in an availability replica, use the synchronization_health and synchronization_health_desc columns of the sys.dm_hadr_availability_replica_states dynamic management view. ロールアップでは、各可用性データベースの同期状態と、その可用性レプリカの可用性モードが考慮されます。The rollup considers the synchronization state of every availability database and the availability mode of its availability replica.

注: 特定の可用性データベースの同期状態を表示するには、クエリ、同期_状態同期_ヘルスの列sys.dm_hadr_database_replica_states動的管理ビュー。Note: To view the synchronization health of a given availability database, query the synchronization_state and synchronization_health columns of the sys.dm_hadr_database_replica_states dynamic management view.
failover_mode_descfailover_mode_desc nvarchar(60)nvarchar(60) 説明フェールオーバー_モード、1 つの。Description of failover_mode, one of:

MANUALMANUAL

AUTOMATICAUTOMATIC

フェールオーバー モードを変更するには、フェールオーバーを使用_モード オプションのALTER AVAILABILITY GROUP Transact-SQLTransact-SQLステートメント。To change the failover mode, use the FAILOVER_MODE option of ALTER AVAILABILITY GROUPTransact-SQLTransact-SQL statement.
session_timeoutsession_timeout intint タイムアウト時間 (秒単位)。The time-out period, in seconds. タイムアウト時間は、レプリカが別のレプリカからのメッセージの受信を待機する最大時間です。この時間を過ぎると、プライマリ レプリカとセカンダリ レプリカの間の接続は障害があるものと見なされます。The time-out period is the maximum time that the replica waits to receive a message from another replica before considering connection between the primary and secondary replica have failed. セッション タイムアウトは、セカンダリ レプリカがプライマリ レプリカに接続されているかどうかを検出します。Session timeout detects whether secondaries are connected the primary replica.

セカンダリ レプリカで障害が発生した接続を検出するには、プライマリ レプリカができないセカンダリ レプリカを考慮_同期します。On detecting a failed connection with a secondary replica, the primary replica considers the secondary replica to be NOT_SYNCHRONIZED. プライマリ レプリカとの接続が確立されていないことを検出すると、セカンダリ レプリカは単に再接続を試みます。On detecting a failed connection with the primary replica, a secondary replica simply attempts to reconnect.

注: セッション タイムアウトにより自動フェールオーバーが発生することはありません。Note: Session timeouts do not cause automatic failovers.

この値を変更するには、SESSION_TIMEOUT オプションを使用してALTER AVAILABILITY GROUP Transact-SQLTransact-SQLステートメント。To change this value, use the SESSION_TIMEOUT option of ALTER AVAILABILITY GROUPTransact-SQLTransact-SQL statement.
プライマリ_ロール_許可_接続primary_role_allow_connections tinyinttinyint かどうか、可用性には、すべての接続や、1 つの読み取り/書き込み接続のみが使用できます。Whether the availability allows all connections or only read-write connections, one of:

2 = すべて (既定)2 = All (default)

3 = 読み取り書き込み3 = Read write
プライマリ_ロール_許可_接続_descprimary_role_allow_connections_desc nvarchar(60)nvarchar(60) 説明プライマリ_ロール_許可_接続、1 つの。Description of primary_role_allow_connections, one of:

ALLALL

読み取る_書き込みREAD_WRITE
セカンダリ_ロール_許可_接続secondary_role_allow_connections tinyinttinyint セカンダリ ロールを実行している (つまりセカンダリ レプリカとして機能している) 可用性レプリカがクライアントからの接続を受け入れることができるかどうか。以下のいずれかです。Whether an availability replica that is performing the secondary role (that is, a secondary replica) can accept connections from clients, one of:

0 = いいえ。0 = No. セカンダリ レプリカのデータベースに対する接続は許可されず、データベースに対して読み取りアクセスを実行できません。No connections are allowed to the databases in the secondary replica, and the databases are not available for read access. これが既定の設定です。This is the default setting.

1 = 読み取り専用です。1 = Read only. セカンダリ レプリカのデータベースに対しては読み取り専用接続だけが許可されます。Only read-only connections are allowed to the databases in the secondary replica. レプリカ内のすべてのデータベースは読み取りアクセスで利用できます。All database(s) in the replica are available for read access.

2 = すべて。2 = All. 読み取り専用アクセスに限り、セカンダリ レプリカのデータベースに対するすべての接続が許可されます。All connections are allowed to the databases in the secondary replica for read-only access.

詳細については、「アクティブなセカンダリ:読み取り可能なセカンダリ レプリカ (Always On 可用性グループ)」を参照してください。For more information, see Active Secondaries: Readable Secondary Replicas (Always On Availability Groups).
secondary_role_allow_connections_descsecondary_role_allow_connections_desc nvarchar(60)nvarchar(60) 説明secondary_role_allow_connections、1 つの。Description of secondary_role_allow_connections, one of:

NONO

READ_ONLYREAD_ONLY

ALLALL
create_datecreate_date datetimedatetime レプリカが作成された日付。Date that the replica was created.

NULL このサーバー インスタンスではなく、レプリカを = です。NULL = Replica not on this server instance.
modify_datemodify_date datetimedatetime レプリカが最後に変更された日付。Date that the replica was last modified.

NULL このサーバー インスタンスではなく、レプリカを = です。NULL = Replica not on this server instance.
backup_prioritybackup_priority intint 同じ可用性グループ内の他のレプリカと比較して、このレプリカでバックアップを実行する優先順位を表す、ユーザー指定の値。Represents the user-specified priority for performing backups on this replica relative to the other replicas in the same availability group. 値は 0 ~ 100 の範囲の整数です。The value is an integer in the range of 0..100.

詳細については、「アクティブなセカンダリ:セカンダリ レプリカでのバックアップ (Always On 可用性グループ)」を参照してください。For more information, see Active Secondaries: Backup on Secondary Replicas (Always On Availability Groups).
read_only_routing_urlread_only_routing_url nvarchar (256)nvarchar(256) 読み取り専用可用性レプリカの接続エンドポイント (URL) です。Connectivity endpoint (URL) of the read only availability replica. 詳細については、このトピックの後の「 可用性グループの読み取り専用ルーティングの構成 (SQL Server)など) を含め、セカンダリ レプリカをホストするサーバー インスタンス上の読み書き可能なデータベースには書き込むことができます。For more information, see Configure Read-Only Routing for an Availability Group (SQL Server).

セキュリティSecurity

アクセス許可Permissions

サーバー インスタンスに対する VIEW ANY DEFINITION 権限が必要です。Requires VIEW ANY DEFINITION permission on the server instance.

関連項目See Also

sys.availability_groups (Transact-SQL) sys.availability_groups (Transact-SQL)
AlwaysOn 可用性グループの概要 (SQL Server) Overview of Always On Availability Groups (SQL Server)
AlwaysOn 可用性グループ (SQL Server) Always On Availability Groups (SQL Server)
可用性グループの監視 (Transact-SQL) Monitor Availability Groups (Transact-SQL)
可用性グループの監視 (Transact-SQL)Monitor Availability Groups (Transact-SQL)