次の方法で共有


可用性グループ レプリカのセッション タイムアウト期間の変更

適用対象: SQL Server

このトピックでは、SQL Server で SQL Server Management Studio、Transact-SQL、または PowerShell を使用して、Always On 可用性レプリカのセッション タイムアウト期間を構成する方法について説明します。 セッション タイムアウト期間は、接続されたレプリカからの ping 応答を可用性レプリカが何秒待機するかを制御するレプリカ プロパティです。この期間を過ぎると、接続に失敗したと見なされます。 既定では、レプリカは ping 応答を 10 秒間待機します。 このレプリカ プロパティは、可用性グループ内の指定したセカンダリ レプリカとプライマリ レプリカ間の接続のみに適用されます。 セッション タイムアウト期間の詳細については、「AlwaysOn 可用性グループの概要 (SQL Server)」を参照してください。

[前提条件]

  • プライマリ レプリカをホストするサーバー インスタンスに接続されている必要があります。

推奨事項

タイムアウト期間を 10 秒以上にしておくことをお勧めします。 値を 10 秒未満に設定すると、負荷の高いシステムでは PING を受信できず、誤認エラーが示される可能性があります。

アクセス許可

可用性グループの ALTER AVAILABILITY GROUP 権限、CONTROL AVAILABILITY GROUP 権限、ALTER ANY AVAILABILITY GROUP 権限、または CONTROL SERVER 権限が必要です。

SQL Server Management Studio を使用する

可用性レプリカのセッション タイムアウト期間を変更するには

  1. オブジェクト エクスプローラーで、プライマリ レプリカをホストするサーバー インスタンスに接続し、サーバー ツリーを展開します。

  2. [AlwaysOn 高可用性] ノードと [可用性グループ] ノードを展開します。

  3. 構成する可用性レプリカが含まれる可用性グループをクリックします。

  4. 構成するレプリカを右クリックし、 [プロパティ]をクリックします。

  5. [可用性レプリカ プロパティ] ダイアログ ボックスで [セッションのタイムアウト (秒)] フィールドを使用して、このレプリカでのセッション タイムアウト期間の秒数を変更します。

Transact-SQL の使用

可用性レプリカのセッション タイムアウト期間を変更するには

  1. プライマリ レプリカをホストするサーバー インスタンスに接続します。

  2. ALTER AVAILABILITY GROUP ステートメントを使用します。次にその例を示します。

    ALTER AVAILABILITY GROUP group_name

    MODIFY REPLICA ON 'instance_name' WITH ( SESSION_TIMEOUT =seconds )

    ここで、group_name は可用性グループの名前、instance_name は変更する可用性レプリカをホストするサーバー インスタンスの名前、seconds は接続するレプリカからの ping 応答を待機してから接続が失敗したと見なす秒数を指定します。 既定では、レプリカは ping 応答を 10 秒間待機します。

    次の例は、 AccountsAG 可用性グループのプライマリ レプリカに入力すると、 15 サーバー インスタンスにあるレプリカのセッション タイムアウト値を INSTANCE09 秒に変更します。

    ALTER AVAILABILITY GROUP AccountsAG   
       MODIFY REPLICA ON 'INSTANCE09' WITH (SESSION_TIMEOUT = 15);  
    

PowerShell の使用

可用性レプリカのセッション タイムアウト期間を変更するには

  1. プライマリ レプリカをホストするサーバー インスタンスにディレクトリを変更 (cd) します 。

  2. Set-SqlAvailabilityReplica コマンドレットを SessionTimeout パラメーターを指定して使用し、指定された可用性レプリカのセッション タイムアウト期間の秒数を変更します。

    たとえば、次のコマンドは、セッションのタイムアウト期間を 15 秒に設定します。

    Set-SqlAvailabilityReplica -SessionTimeout 15 `   
    -Path SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MyAg\AvailabilityReplicas\MyReplica  
    

    注意

    コマンドレットの構文を表示するには、 PowerShell 環境で Get-Help SQL Server コマンドレットを使用します。 詳細については、「 Get Help SQL Server PowerShell」を参照してください。

SQL Server PowerShell プロバイダーを設定して使用するには

参照

Always On 可用性グループの概要 (SQL Server)