共用方式為


Suspend-SqlAvailabilityDatabase

暫停可用性資料庫的數據移動。

語法

Suspend-SqlAvailabilityDatabase
       [[-Path] <String[]>]
       [-Script]
       [-AccessToken <PSObject>]
       [-TrustServerCertificate]
       [-HostNameInCertificate <String>]
       [-Encrypt <String>]
       [-ProgressAction <ActionPreference>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]
Suspend-SqlAvailabilityDatabase
       [-InputObject] <AvailabilityDatabase[]>
       [-Script]
       [-AccessToken <PSObject>]
       [-TrustServerCertificate]
       [-HostNameInCertificate <String>]
       [-Encrypt <String>]
       [-ProgressAction <ActionPreference>]
       [-WhatIf]
       [-Confirm]
       [<CommonParameters>]

Description

Suspend-SqlAvailabilityDatabase Cmdlet 會暫停可用性資料庫上的數據移動。 此 Cmdlet 會暫停目前伺服器實例所裝載複本上的資料庫。 如果您暫停輔助資料庫,此 Cmdlet 會將其狀態設定為 SUSPENDED。 它落後於對應的主資料庫。 如果您暫停主資料庫,則每個次要複本上的數據移動都會停止。

範例

範例 1:暫停資料庫的同步處理

PS C:\> Suspend-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\Server\Instance\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16"

此命令會在名為 Server\Instance的伺服器實例上,暫停可用性資料庫 Database16 之可用性資料庫的數據同步處理。

範例 2:暫停所有資料庫的同步處理

PS C:\> Get-ChildItem "SQLSERVER:\Sql\Server\Instance\AvailabilityGroups\MainAG\AvailabilityDatabases" | Suspend-SqlAvailabilityDatabase

此命令會取得屬於 MainAG的所有可用性資料庫,然後使用管線運算符將它們傳遞至目前的 Cmdlet。 目前的 Cmdlet 會暫停每個可用性資料庫。

範例 3:建立腳本以暫停資料庫

PS C:\> Suspend-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\Server\Instance\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16" -Script

此命令會建立 Transact-SQL 腳本,在名為 MainAG的可用性群組中暫停名為 Database16 的可用性資料庫。 命令不會執行此動作。

參數

-AccessToken

用來向 SQL Server 驗證的存取令牌,作為使用者/密碼或 Windows 驗證的替代方案。

例如,這可用來使用 Service PrincipalManaged Identity來連線到 SQL Azure DBSQL Azure Managed Instance

要使用的參數可以是字串,表示令牌或 PSAccessToken 物件,如執行 Get-AzAccessToken -ResourceUrl https://database.windows.net所傳回。

此參數是模組 v22 的新功能。

類型:PSObject
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Confirm

在執行 Cmdlet 之前,提示您進行確認。

類型:SwitchParameter
別名:cf
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

-Encrypt

線上到 SQL Server 時要使用的加密類型。

此值會對應至 Microsoft.Data.SqlClient 驅動程式之 SqlConnection 物件上的 Encrypt 屬性 SqlConnectionEncryptOption

在模組的 v22 中,預設值為 Optional (為了與 v21 相容)。 在模組的 v23+ 中,預設值會是 「強制」,這可能會為現有的腳本建立重大變更。

此參數是模組 v22 的新功能。

類型:String
接受的值:Mandatory, Optional, Strict
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-HostNameInCertificate

用來驗證 SQL Server TLS/SSL 憑證的主機名。 如果您的 SQL Server 實例已啟用強制加密,而且您想要使用主機名/shortname 連線到實例,則必須傳遞此參數。 如果省略此參數,則必須將完整功能變數名稱 (FQDN) 傳遞至 -ServerInstance 才能連線到啟用強制加密的 SQL Server 實例。

此參數是模組 v22 的新功能。

類型:String
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-InputObject

指定可用性資料庫,做為 AvailabilityDatabase 物件,此 Cmdlet 會暫停。

類型:AvailabilityDatabase[]
Position:1
預設值:None
必要:True
接受管線輸入:True
接受萬用字元:False

-Path

指定 Cmdlet 暫停的可用性資料庫路徑。 如果您未指定此參數,此 Cmdlet 會使用目前的工作位置。

類型:String[]
Position:1
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-ProgressAction

決定 PowerShell 如何回應腳本、Cmdlet 或提供者所產生的進度更新,例如 Write-Progress Cmdlet 所產生的進度列。 Write-Progress Cmdlet 會建立顯示命令狀態的進度列。

類型:ActionPreference
別名:proga
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-Script

指出此 Cmdlet 會傳回執行此 Cmdlet 所執行工作的 Transact-SQL 腳本。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-TrustServerCertificate

指出通道是否會在略過憑證鏈結以驗證信任時加密。

在模組的 v22 中,預設值為 $true (為了與 v21 相容)。 在模組的 v23+ 中,預設值會是 『$false』,這可能會為現有的腳本建立重大變更。

此參數是模組 v22 的新功能。

類型:SwitchParameter
Position:Named
預設值:None
必要:False
接受管線輸入:False
接受萬用字元:False

-WhatIf

顯示 Cmdlet 執行時會發生什麼事。 Cmdlet 未執行。

類型:SwitchParameter
別名:wi
Position:Named
預設值:False
必要:False
接受管線輸入:False
接受萬用字元:False

輸入

Microsoft.SqlServer.Management.Smo.AvailabilityDatabase[]

您可以將可用性資料庫傳遞至此 Cmdlet。

備註

您必須啟用執行此命令的實例,才能達到高可用性。