AlwaysOn 可用性群組的 PowerShell Cmdlet 概觀

適用於:SQL Server

Microsoft PowerShell 是以工作為基礎、專為系統管理而設計的命令列殼層和指令碼語言。 Always On 可用性群組會在 SQL Server 中提供一組 PowerShell Cmdlet,可讓您部署、管理和監視可用性群組、可用性複本以及可用性資料庫。

注意

PowerShell 指令程式可以透過順利起始動作來完成。 這並不表示預期的工作 (例如可用性群組的容錯移轉) 已經完成。 編寫一系列動作的指令碼時,您可能必須檢查動作的狀態,並且等候這些動作完成。

注意

如需《SQL Server 線上叢書》中說明如何使用 Cmdlet 來執行 Always On 可用性群組工作的主題清單,請參閱 Always On 可用性群組概觀 (SQL Server&) 的「相關工作」一節。

設定 AlwaysOn 可用性群組的伺服器執行個體

指令程式 描述 支援的項目
Disable-SqlAlwaysOn 停用伺服器執行個體上的 Always On 可用性群組功能。 PathInputObjectName 參數所指定的伺服器執行個體。 (必須是支援 Always On 可用性群組的 SQL Server 版本。)
Enable-SqlAlwaysOn 在支援 Always On 可用性群組功能的 SQL Server 執行個體上啟用 Always On 可用性群組。 如需 Always On 可用性群組支援的相關資訊,請參閱 Always On 可用性群組的必要條件、限制和建議 (SQL Server) 任何支援 Always On 可用性群組的 SQL Server 版本。
New-SqlHadrEndPoint 在伺服器執行個體上建立新的資料庫鏡像端點。 在主要與次要資料庫之間進行資料移動時需要這個端點。 任何 SQL Server 執行個體
Set-SqlHadrEndpoint 變更現有資料庫鏡像端點的屬性,例如名稱、狀態或驗證屬性。 支援 Always On 可用性群組、且缺少資料庫鏡像端點的伺服器執行個體

備份和還原資料庫與交易記錄

指令程式 描述 支援的項目
Backup-SqlDatabase 建立資料或記錄備份。 任何線上資料庫 (針對 Always On 可用性群組,則為裝載主要複本之伺服器執行個體的資料庫)
Restore-SqlDatabase 還原備份。 任何 SQL Server 執行個體 (針對 Always On 可用性群組,則為裝載主要複本的伺服器執行個體)

重要

準備次要資料庫時,您必須在每個 Restore-SqlDatabase 命令中使用 -NoRecovery 參數。

如需使用這些 Cmdlet 來準備次要資料庫的相關資訊,請參閱針對可用性群組手動準備次要資料庫 (SQL Server)

建立和管理可用性群組

指令程式 描述 支援的項目
New-SqlAvailabilityGroup 建立新的可用性群組。 要裝載主要複本的伺服器執行個體
Remove-SqlAvailabilityGroup 刪除可用性群組。 啟用 HADR 的伺服器執行個體
Set-SqlAvailabilityGroup 設定可用性群組的屬性;讓可用性群組上線/離線。 裝載主要複本的伺服器執行個體
Switch-SqlAvailabilityGroup 起始下列其中一種形式的容錯移轉:

可用性群組的強制容錯移轉 (可能遺失資料)。

可用性群組的手動容錯移轉。
裝載目標次要複本的伺服器執行個體

建立和管理可用性群組接聽程式

Cmdlet Description 支援的項目
New-SqlAvailabilityGroupListener 建立新的可用性群組接聽程式,並將其附加至現有的可用性群組。 裝載主要複本的伺服器執行個體
Set-SqlAvailabilityGroupListener 修改現有可用性群組接聽程式上的通訊埠設定。 裝載主要複本的伺服器執行個體
Add-SqlAvailabilityGroupListenerStaticIp 將靜態 IP 位址加入至現有的可用性群組接聽程式組態。 IP 位址可以是包含子網路的 IPv4 位址或 IPv6 位址。 裝載主要複本的伺服器執行個體

建立和管理可用性複本

指令程式 描述 支援的項目
New-SqlAvailabilityReplica 建立新的可用性複本。 您可以使用 -AsTemplate 參數,針對每個新的可用性複本建立記憶體內部可用性複本物件。 裝載主要複本的伺服器執行個體
Join-SqlAvailabilityGroup 將次要複本聯結至可用性群組。 裝載次要複本的伺服器執行個體
Remove-SqlAvailabilityReplica 刪除可用性複本。 裝載主要複本的伺服器執行個體
Set-SqlAvailabilityReplica 設定可用性複本的屬性。 裝載主要複本的伺服器執行個體

加入和管理可用性資料庫

指令程式 描述 支援的項目
Add-SqlAvailabilityDatabase 在主要複本上,將資料庫加入至可用性群組。

在次要複本上,將次要資料庫聯結至可用性群組。
裝載可用性複本的任何伺服器執行個體 (主要和次要複本的行為有所不同)
Remove-SqlAvailabilityDatabase 在主要複本上,從可用性群組中移除資料庫。

在次要複本上,從本機次要複本中移除本機次要資料庫。
裝載可用性複本的任何伺服器執行個體 (主要和次要複本的行為有所不同)
Resume-SqlAvailabilityDatabase 繼續進行暫停之可用性資料庫的資料移動。 已暫停資料庫的伺服器執行個體。
Suspend-SqlAvailabilityDatabase 暫停可用性資料庫的資料移動。 裝載可用性複本的任何伺服器執行個體。

監視可用性群組健全狀況

下列 SQL Server Cmdlet 可讓您監視可用性群組及其複本和資料庫的健康情況。

重要

您必須擁有 CONNECT、VIEW SERVER STATE 和 VIEW ANY DEFINITION 權限,才能執行這些指令程式。

Cmdlet Description 支援的項目
Test-SqlAvailabilityGroup 透過評估 SQL Server 原則式管理 (PBM) 原則,評估可用性群組的健全狀況。 裝載可用性複本的任何伺服器執行個體。*
Test-SqlAvailabilityReplica 透過評估 SQL Server 原則式管理 (PBM) 原則,評估可用性複本的健全狀況。 裝載可用性複本的任何伺服器執行個體。*
Test-SqlDatabaseReplicaState 透過評估 SQL Server 原則式管理 (PBM) 原則,評估所有聯結可用性複本之可用性資料庫的健全狀況。 裝載可用性複本的任何伺服器執行個體。*

*若要檢視可用性群組中所有可用性複本的相關資訊,請用於裝載主要複本的伺服器執行個體。

如需詳細資訊,請參閱使用 Always On 原則檢視可用性群組的健康情況 (SQL Server)

另請參閱

AlwaysOn 可用性群組概觀 (SQL Server)
Get Help SQL Server PowerShell