Always On 可用性グループへのセカンダリ レプリカの追加Add a secondary replica to an Always On Availability Group

適用対象: ○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

このトピックでは、 SQL Server Management StudioSQL Server Management Studioで、 Transact-SQLTransact-SQLSQL Server 2017SQL Server 2017、または PowerShell を使用して、既存の AlwaysOn 可用性グループにセカンダリ レプリカを追加する方法について説明します。This topic describes how to add a secondary replica to an existing Always On availability group by using SQL Server Management StudioSQL Server Management Studio, Transact-SQLTransact-SQL, or PowerShell in SQL Server 2017SQL Server 2017.

前提条件と制限Prerequisites and Restrictions

  • プライマリ レプリカをホストするサーバー インスタンスに接続されている必要があります。You must be connected to the server instance that hosts the primary replica.

詳細については、「 Always On 可用性グループの前提条件、制限事項、および推奨事項 (SQL Server)の構成に関する一般的な問題のトラブルシューティングに役立つ情報を提供します。For more information, see Prerequisites, Restrictions, and Recommendations for Always On Availability Groups (SQL Server).

セキュリティSecurity

PermissionsPermissions

可用性グループの ALTER AVAILABILITY GROUP 権限、CONTROL AVAILABILITY GROUP 権限、ALTER ANY AVAILABILITY GROUP 権限、または CONTROL SERVER 権限が必要です。Requires ALTER AVAILABILITY GROUP permission on the availability group, CONTROL AVAILABILITY GROUP permission, ALTER ANY AVAILABILITY GROUP permission, or CONTROL SERVER permission.

注意

この記事の手順やコード例の中で、古い情報や間違っている情報を見つけた場合は、ぜひお知らせください。If you find something outdated or incorrect in this article, such as on a step or in a code example, please tell us. このページの下部にある [フィードバック] セクション内で [このページ] ボタンをクリックしてください。You can click the This page button in the Feedback section at the bottom of this page. 修正内容がわかっている場合は、このページの上部にある編集用の鉛筆アイコンをクリックしてから、GitHub ページ上の鉛筆アイコンをクリックしてください。Or better, if you know the fix, you can click the Edit-pencil icon at the top of this page, and then click the pencil icon on the GitHub page. ありがとうございます。Thank you!

SQL Server Management Studio の使用Using SQL Server Management Studio

レプリカを追加するにはTo add a replica

  1. オブジェクト エクスプローラーで、プライマリ レプリカをホストするサーバー インスタンスに接続し、サーバー ツリーを展開します。In Object Explorer, connect to the server instance that hosts the primary replica, and expand the server tree.

  2. [AlwaysOn 高可用性] ノードと [可用性グループ] ノードを展開します。Expand the Always On High Availability node and the Availability Groups node.

  3. 可用性グループを右クリックし、次のコマンドのどちらかを選択します。Right-click the availability group, and select one of the following commands:

    • 可用性グループへのレプリカ追加ウィザードを起動するには、 [レプリカの追加] をクリックします。Select the Add Replica command to launch the Add Replica to Availability Group Wizard. 詳細については、「可用性グループへのレプリカ追加ウィザードの使用 (SQL Server Management Studio)」を参照してください。For more information, see Use the Add Replica to Availability Group Wizard (SQL Server Management Studio).

    • または、 [可用性グループのプロパティ] ダイアログ ボックスで、 [プロパティ] をクリックします。Alternatively, select the Properties command to open the Availability Group Properties dialog box. このダイアログ ボックスでレプリカを追加する手順は以下のとおりです。The steps for adding a replica in this dialog box are as follows:

      1. ダイアログ ボックスの [可用性レプリカ] ペインで、 [追加] をクリックします。In the Availability Replicas pane of the dialog box, click the Add button. これにより、レプリカのエントリが作成され、空白の [サーバー インスタンス] フィールドが選択された状態になります。This creates and selects a replica entry in which the blank Server Instance field is selected.

      2. 可用性レプリカをホストするための前提条件を満たしているサーバー インスタンスの名前を入力します。Enter the name of a server instance that meets the prerequisites for hosting an availability replica.

      さらにレプリカを追加するには、上記の手順を繰り返します。To add an additional replicas, repeat the preceding steps. レプリカの指定を完了したら、 [OK] をクリックして操作を完了します。When you are done specifying replicas, click OK to complete the operation.

Transact-SQL の使用Using Transact-SQL

レプリカを追加するにはTo add a replica

  1. プライマリ レプリカをホストする SQL ServerSQL Server のインスタンスに接続します。Connect to the instance of SQL ServerSQL Server that hosts the primary replica.

  2. ALTER AVAILABILITY GROUP ステートメントの ADD REPLICA ON 句を使用して、可用性グループに新しいセカンダリ レプリカを追加します。Add the new secondary replica to the availability group by using the ADD REPLICA ON clause of the ALTER AVAILABILITY GROUP statement. ADD REPLICA ON 句には、ENDPOINT_URL、AVAILABILITY_MODE、および FAILOVER_MODE オプションが必要です。The ENDPOINT_URL, AVAILABILITY_MODE, and FAILOVER_MODE options are required in an ADD REPLICA ON clause. 他のレプリカ オプション (BACKUP_PRIORITY、SECONDARY_ROLE、PRIMARY_ROLE、SESSION_TIMEOUT) は省略可能です。The other replica options- BACKUP_PRIORITY, SECONDARY_ROLE, PRIMARY_ROLE, and SESSION_TIMEOUT-are optional. 詳細については、「 ALTER AVAILABILITY GROUP (Transact-SQL)、または PowerShell を使用して、既存の AlwaysOn 可用性グループにセカンダリ レプリカを追加する方法について説明します。For more information, see ALTER AVAILABILITY GROUP (Transact-SQL).

    たとえば、次の Transact-SQLTransact-SQL ステートメントは、 MyAG によってホストされるデフォルト サーバー インスタンス (エンドポイント URL が COMPUTER04) の TCP://COMPUTER04.Adventure-Works.com:5022'という名前の可用性グループに新しいレプリカを作成します。For example, the following Transact-SQLTransact-SQL statement creates a new replica to an availability group named MyAG on the default server instance hosted by COMPUTER04, whose endpoint URL is TCP://COMPUTER04.Adventure-Works.com:5022'. このレプリカは、手動フェールオーバーと非同期コミット可用性モードをサポートします。This replica supports manual failover and asynchronous-commit availability mode.

    ALTER AVAILABILITY GROUP MyAG ADD REPLICA ON 'COMPUTER04'   
       WITH (  
             ENDPOINT_URL = 'TCP://COMPUTER04.Adventure-Works.com:5022',  
             AVAILABILITY_MODE = ASYNCHRONOUS_COMMIT,  
             FAILOVER_MODE = MANUAL  
             );  
    

PowerShell の使用Using PowerShell

レプリカを追加するにはTo add a replica

  1. プライマリ レプリカをホストするサーバー インスタンスにディレクトリを変更 (cd) します 。Change directory (cd) to the server instance that hosts the primary replica.

  2. New-SqlAvailabilityReplica コマンドレットを使用します。Use the New-SqlAvailabilityReplica cmdlet.

    たとえば、次のコマンドは、可用性レプリカを MyAgという名前の可用性グループに追加します。For example, the following command adds an availability replica to an existing availability group named MyAg. このレプリカは、手動フェールオーバーと非同期コミット可用性モードをサポートします。This replica supports manual failover and asynchronous-commit availability mode. セカンダリ ロールでは、このレプリカは読み取りアクセス接続をサポートして、読み取り専用の処理をこのレプリカにオフロードできるようにします。In the secondary role, this replica will support read access connections, allowing you to offload read-only processing to this replica.

    $agPath = "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MyAg"  
    $endpointURL = "TCP://PrimaryServerName.domain.com:5022"  
    $failoverMode = "Manual"  
    $availabilityMode = "AsynchronousCommit"  
    $secondaryReadMode = "AllowAllConnections"  
    
    New-SqlAvailabilityReplica -Name SecondaryServer\Instance `   
    -EndpointUrl $endpointURL `   
    -FailoverMode $failoverMode `   
    -AvailabilityMode $availabilityMode `   
    -ConnectionModeInSecondaryRole $secondaryReadMode `   
    -Path $agPath  
    

    注意

    コマンドレットの構文を表示するには、 PowerShell 環境で Get-Help SQL ServerSQL Server コマンドレットを使用します。To view the syntax of a cmdlet, use the Get-Help cmdlet in the SQL ServerSQL Server PowerShell environment. 詳細については、「 Get Help SQL Server PowerShell」を参照してください。For more information, see Get Help SQL Server PowerShell.

SQL Server PowerShell プロバイダーを設定して使用するにはTo set up and use the SQL Server PowerShell provider

補足情報:セカンダリ レプリカを追加した後Follow Up: After Adding a Secondary Replica

既存の可用性グループのレプリカを追加するには、次の手順を実行する必要があります。To add a replica for an existing availability group, you must perform the following steps:

  1. 新しいセカンダリ レプリカをホストする予定のサーバー インスタンスに接続します。Connect to the server instance that is going to host the new secondary replica.

  2. 新しいセカンダリ レプリカを可用性グループに参加させます。Join the new secondary replica to the availability group. 詳細については、「 可用性グループへのセカンダリ レプリカの参加 (SQL Server)、または PowerShell を使用して、既存の AlwaysOn 可用性グループにセカンダリ レプリカを追加する方法について説明します。For more information, see Join a Secondary Replica to an Availability Group (SQL Server).

  3. 可用性グループ内の各データベースについて、セカンダリ レプリカをホストしているサーバー インスタンス上でセカンダリ データベースを作成します。For each database in the availability group, create a secondary database on the server instance that is hosting the secondary replica. 詳細については、「 可用性グループに対するセカンダリ データベースの手動準備 (SQL Server)、または PowerShell を使用して、AlwaysOn 可用性グループにセカンダリ データベースを参加させる方法について説明します。For more information, see Manually Prepare a Secondary Database for an Availability Group (SQL Server).

  4. 新しいセカンダリ データベースのそれぞれを可用性グループに参加させます。Join each of the new secondary databases to the availability group. 詳細については、「 可用性グループへのセカンダリ データベースの参加 (SQL Server)のインスタンスに AlwaysOn 可用性グループを作成する方法について説明します。For more information, see Join a Secondary Database to an Availability Group (SQL Server).

関連タスクRelated Tasks

可用性レプリカを管理するにはTo manage an availability replica

参照See Also

ALTER AVAILABILITY GROUP (Transact-SQL) ALTER AVAILABILITY GROUP (Transact-SQL)
AlwaysOn 可用性グループの概要 (SQL Server) Overview of Always On Availability Groups (SQL Server)
可用性グループの作成と構成 (SQL Server) Creation and Configuration of Availability Groups (SQL Server)
Always On ダッシュボードの使用 (SQL Server Management Studio) Use the Always On Dashboard (SQL Server Management Studio)
可用性グループの監視 (Transact-SQL)Monitor Availability Groups (Transact-SQL)