Always On 可用性グループの PowerShell コマンドレットの概要Overview of PowerShell Cmdlets for Always On Availability Groups

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

MicrosoftMicrosoft PowerShell は、特にシステム管理用に設計されている、タスク ベースのコマンド ライン シェルとスクリプト言語です。PowerShell is a task-based command-line shell and scripting language designed especially for system administration. Always On 可用性グループAlways On availability groups は、 SQL Server 2017SQL Server 2017 で一連の PowerShell コマンドレットを提供しており、それらを使用すると可用性グループ、可用性レプリカ、および可用性データベースの配置、管理、および監視ができます。provides a set of PowerShell cmdlets in SQL Server 2017SQL Server 2017 that enable you to deploy, manage, and monitor availability groups, availability replicas, and availability databases.

注意

PowerShell コマンドレットは、アクションを正常に開始した時点で完了できます。A PowerShell cmdlet can complete by successfully initiating an action. つまり、目的の操作 (可用性グループのフェールオーバーなど) の完了を示すわけではありません。This does not indicate that the intended work, such as the fail over of an availability group, has completed. 一連の操作をスクリプト化している場合は、アクションの状態を確認し、完了するまで待機しなければならないことがあります。When scripting a sequence of actions, you might have to check the status of actions, and wait for them to complete.

注意

Always On 可用性グループAlways On availability groupsのタスクを実行するコマンドレットの使用方法を説明している SQL Server 2017SQL Server 2017 オンライン ブックのトピックの一覧については、「Always On 可用性グループ (SQL Server&#41 の概要」の「関連タスク」を参照してください。For a list of topics in SQL Server 2017SQL Server 2017 Books Online that describe how to use cmdlets to perform Always On 可用性グループAlways On availability groups tasks, see the "Related Tasks" section of Overview of Always On Availability Groups (SQL Server).

Always On 可用性グループのサーバー インスタンスの構成Configuring a Server Instance for Always On Availability Groups

コマンドレットCmdlets [説明]Description サポート対象Supported on
Disable-SqlAlwaysOnDisable-SqlAlwaysOn サーバー インスタンス上の Always On 可用性グループAlways On availability groups 機能を無効にします。Disables the Always On 可用性グループAlways On availability groups feature on a server instance. PathInputObject、または Name パラメーターによって指定されるサーバー インスタンス。The server instance that is specified by the Path, InputObject, or Name parameter. ( SQL ServerSQL Server をサポートしている Always On 可用性グループAlways On availability groupsのエディションである必要があります)。(Must be an edition of SQL ServerSQL Server that supports Always On 可用性グループAlways On availability groups.)
Enable-SqlAlwaysOnEnable-SqlAlwaysOn Always On 可用性グループAlways On availability groups 機能をサポートしている SQL Server 2017SQL Server 2017 のインスタンス上で Always On 可用性グループAlways On availability groups を有効化します。Enables Always On 可用性グループAlways On availability groups on an instance of SQL Server 2017SQL Server 2017 that supports the Always On 可用性グループAlways On availability groups feature. Always On 可用性グループAlways On availability groups のサポートの詳細については、「Always On 可用性グループの前提条件、制限事項、および推奨事項 (SQL Server)」を参照してください。For information about support for Always On 可用性グループAlways On availability groups, see Prerequisites, Restrictions, and Recommendations for Always On Availability Groups (SQL Server). SQL ServerSQL Server をサポートしている Always On 可用性グループAlways On availability groupsの任意のエディション。Any edition of SQL ServerSQL Server that supports Always On 可用性グループAlways On availability groups.
New-SqlHadrEndPointNew-SqlHadrEndPoint サーバー インスタンス上に新しいデータベース ミラーリング エンドポイントを作成します。Creates a new database mirroring endpoint on a server instance. このエンドポイントは、プライマリ データベースとセカンダリ データベース間のデータ移動のために必要です。This endpoint is required for data movement between primary and secondary databases. の任意のインスタンス SQL ServerSQL ServerAny instance of SQL ServerSQL Server
Set-SqlHadrEndpointSet-SqlHadrEndpoint 既存のデータベース ミラーリング エンドポイントの名前、状態、認証などのプロパティを変更します。Changes the properties of an existing database mirroring endpoint, such as the name, state, or authentication properties. Always On 可用性グループAlways On availability groups をサポートしていて、データベース ミラーリング エンドポイントが存在しないサーバー インスタンス。A server instance that supports Always On 可用性グループAlways On availability groups and lacks a database mirroring endpoint

バックアップおよびデータベースとトランザクション ログを復元します。Backing Up and Restoring Databases and Transaction Logs

コマンドレットCmdlets [説明]Description サポート対象Supported on
Backup-SqlDatabaseBackup-SqlDatabase データまたはログ バックアップを作成します。Creates a data or log backup. 任意のオンライン データベース ( Always On 可用性グループAlways On availability groupsの場合、プライマリ レプリカをホストしているサーバー インスタンス上のデータベース)Any online database (for Always On 可用性グループAlways On availability groups, a database on the server instance that hosts the primary replica)
Restore-SqlDatabaseRestore-SqlDatabase バックアップを復元します。Restores a backup. SQL ServerSQL Server の任意のインスタンス ( Always On 可用性グループAlways On availability groupsの場合、セカンダリ レプリカをホストしているサーバー インスタンス)Any instance of SQL ServerSQL Server (for Always On 可用性グループAlways On availability groups, a server instance that hosts a secondary replica)

重要

セカンダリ データベースを準備している場合は、すべての Restore-SqlDatabase コマンドで -NoRecovery パラメーターを使用する必要があります。When preparing a secondary database, you must use the -NoRecovery parameter in every Restore-SqlDatabase command.

これらのコマンドレッドを使用してセカンダリ データベースを準備する方法の詳細については、「可用性グループに対するセカンダリ データベースの手動準備 (SQL Server)」を参照してください。For information about using these cmdlets to prepare a secondary database, see Manually Prepare a Secondary Database for an Availability Group (SQL Server).

作成して、可用性グループの管理Creating and Managing an Availability Group

コマンドレットCmdlets [説明]Description サポート対象Supported on
New-SqlAvailabilityGroupNew-SqlAvailabilityGroup 新しい可用性グループを作成します。Creates a new availability group. プライマリ レプリカをホストするサーバー インスタンスServer instance to host primary replica
Remove-SqlAvailabilityGroupRemove-SqlAvailabilityGroup 可用性グループを削除します。Deletes availability group. HADR 対応のサーバー インスタンスHADR-enabled server instance
Set-SqlAvailabilityGroupSet-SqlAvailabilityGroup 可用性グループのプロパティを設定します。可用性グループをオンライン/オフラインにします。Sets the properties of an availability group; take an availability group online/offline プライマリ レプリカをホストするサーバー インスタンスServer instance that hosts primary replica
Switch-SqlAvailabilityGroupSwitch-SqlAvailabilityGroup 以下のいずれかの形式のフェールオーバーを開始します。Initiates one of the following forms of failover:

可用性グループの強制フェールオーバー (データ損失の可能性あり)。A forced failover of an availability group (with possible data loss).

可用性グループの手動フェールオーバー。A manual failover of an availability group.
対象のセカンダリ レプリカをホストするサーバー インスタンスServer instance that hosts target secondary replica

作成して、可用性グループ リスナーの管理Creating and Managing an Availability Group Listener

コマンドレットCmdlet [説明]Description サポート対象Supported on
New-SqlAvailabilityGroupListenerNew-SqlAvailabilityGroupListener 新しい可用性グループ リスナーを作成して、既存の可用性グループにアタッチします。Creates a new availability group listener and attaches it to an existing availability group. プライマリ レプリカをホストするサーバー インスタンスServer instance that hosts primary replica
Set-SqlAvailabilityGroupListenerSet-SqlAvailabilityGroupListener 既存の可用性グループ リスナーのポート設定を変更します。Modifies the port setting on an existing availability group listener. プライマリ レプリカをホストするサーバー インスタンスServer instance that hosts primary replica
Add-SqlAvailabilityGroupListenerStaticIpAdd-SqlAvailabilityGroupListenerStaticIp 既存の可用性グループ リスナー構成に静的 IP アドレスを追加します。Adds a static IP address to an existing availability group listener configuration. IP アドレスには、サブネットを含む IPv4 アドレス、または IPv6 アドレスを指定できます。The IP address can be an IPv4 address with subnet, or an IPv6 address. プライマリ レプリカをホストするサーバー インスタンスServer instance that hosts primary replica

作成して、可用性レプリカの管理Creating and Managing an Availability Replica

コマンドレットCmdlets [説明]Description サポート対象Supported on
New-SqlAvailabilityReplicaNew-SqlAvailabilityReplica 新しい可用性レプリカを作成します。Creates a new availability replica. -AsTemplate パラメーターを使用すると、新しい可用性レプリカごとにインメモリの可用性レプリカ オブジェクトを作成できます。You can Use the -AsTemplate parameter to create an in-memory availability-replica object for each new availability replica. プライマリ レプリカをホストするサーバー インスタンスServer instance that hosts primary replica
Join-SqlAvailabilityGroupJoin-SqlAvailabilityGroup セカンダリ レプリカを可用性グループに参加させます。Joins a secondary replica to the availability group. セカンダリ レプリカをホストするサーバー インスタンスServer instance that hosts secondary replica
Remove-SqlAvailabilityReplicaRemove-SqlAvailabilityReplica 可用性レプリカを削除します。Deletes an availability replica. プライマリ レプリカをホストするサーバー インスタンスServer instance that hosts primary replica
Set-SqlAvailabilityReplicaSet-SqlAvailabilityReplica 可用性レプリカのプロパティを設定します。Sets the properties of an availability replica. プライマリ レプリカをホストするサーバー インスタンスServer instance that hosts primary replica

追加して、可用性データベースの管理Adding and Managing an Availability Database

コマンドレットCmdlets [説明]Description サポート対象Supported on
Add-SqlAvailabilityDatabaseAdd-SqlAvailabilityDatabase プライマリ レプリカ上で、データベースを可用性グループに追加します。On the primary replica, adds a database to an availability group.

セカンダリ レプリカ上で、セカンダリ データベースを可用性グループに参加させます。On a secondary replica, joins a secondary database to an availability group.
可用性レプリカをホストする任意のサーバー インスタンス (レプリカがプライマリかセカンダリかで動作が異なります)Any server instance that hosts an availability replica (behavior differs for primary and secondary replicas)
Remove-SqlAvailabilityDatabaseRemove-SqlAvailabilityDatabase プライマリ レプリカ上で、可用性グループからデータベースを削除します。On the primary replica, removes the database from the availability group.

セカンダリ レプリカ上で、ローカル セカンダリ データベースをローカル セカンダリ レプリカから削除します。On a secondary replica, removes the local secondary database from the local secondary replica.
可用性レプリカをホストする任意のサーバー インスタンス (レプリカがプライマリかセカンダリかで動作が異なります)Any server instance that hosts an availability replica (behavior differs for primary and secondary replicas)
Resume-SqlAvailabilityDatabaseResume-SqlAvailabilityDatabase 中断されている可用性データベースのデータ移動を再開します。Resumes the data movement for a suspended availability database. データベースが中断されたサーバー インスタンスThe server instance on which the database was suspended.
Suspend-SqlAvailabilityDatabaseSuspend-SqlAvailabilityDatabase 可用性データベースのデータ移動を中断します。Suspends the data movement for an availability database. 可用性レプリカをホストする任意のサーバー インスタンスAny server instance that hosts an availability replica.

可用性グループの正常性の監視Monitoring Availability Group Health

以下の SQL ServerSQL Server コマンドレットを使用すると、可用性グループとそのレプリカおよびデータベースの正常性を監視できます。The following SQL ServerSQL Server cmdlets enable you to monitor the health of an availability group and its replicas and databases.

重要

これらのコマンドレットを実行するには、CONNECT、VIEW SERVER STATE、および VIEW ANY DEFINITION 権限が必要です。You must have CONNECT, VIEW SERVER STATE, and VIEW ANY DEFINITION permissions to execute these cmdlets.

コマンドレットCmdlet [説明]Description サポート対象Supported on
Test-SqlAvailabilityGroupTest-SqlAvailabilityGroup SQL Server のポリシー ベースの管理 (PBM) のポリシーを評価することによって、可用性グループの正常性を査定します。Assesses the health of an availability group by evaluating SQL Server policy based management (PBM) policies. 可用性レプリカをホストする任意のサーバー インスタンス。*Any server instance that hosts an availability replica.*
Test-SqlAvailabilityReplicaTest-SqlAvailabilityReplica SQL Server のポリシー ベースの管理 (PBM) のポリシーを評価することによって、可用性レプリカの正常性を査定します。Assesses the health of availability replicas by evaluating SQL Server policy based management (PBM) policies. 可用性レプリカをホストする任意のサーバー インスタンス。*Any server instance that hosts an availability replica.*
Test-SqlDatabaseReplicaStateTest-SqlDatabaseReplicaState SQL Server のポリシー ベースの管理 (PBM) のポリシーを評価することによって、参加しているすべての可用性レプリカ上の可用性データベースの正常性を査定します。Assesses the health of an availability database on all joined availability replicas by evaluating SQL Server policy based management (PBM) policies. 可用性レプリカをホストする任意のサーバー インスタンス。*Any server instance that hosts an availability replica.*

* 可用性グループ内のすべての可用性レプリカについての情報を表示するには、プライマリ レプリカをホストするサーバー インスタンスを使用してください。*To view information about all of the availability replicas in an availability group, use to the server instance that hosts the primary replica.

詳細については、「Always On ポリシーを使用した可用性グループの正常性の確認 (SQL Server&#41」を参照してください。For more information, see Use Always On Policies to View the Health of an Availability Group (SQL Server).

参照See Also

Always On 可用性グループの概要 (SQL Server) Overview of Always On Availability Groups (SQL Server)
SQL Server PowerShell のヘルプの参照Get Help SQL Server PowerShell