Remove-SqlAvailabilityDatabase
從可用性群組中移除可用性資料庫。
語法
Remove-SqlAvailabilityDatabase
[-Path] <String[]>
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-ProgressAction <ActionPreference>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Remove-SqlAvailabilityDatabase
[-InputObject] <AvailabilityDatabase[]>
[-Script]
[-AccessToken <PSObject>]
[-TrustServerCertificate]
[-HostNameInCertificate <String>]
[-Encrypt <String>]
[-ProgressAction <ActionPreference>]
[-WhatIf]
[-Confirm]
[<CommonParameters>]
Description
Remove-SqlAvailabilityDatabase Cmdlet 會從可用性群組中移除可用性資料庫。 InputObject 或 Path 參數會指定可用性資料庫。
如果您在裝載主要複本的伺服器實例上執行此 Cmdlet,Cmdlet 會從可用性群組中移除主資料庫和所有對應的輔助資料庫。
如果您在裝載次要複本的伺服器實例上執行此 Cmdlet,Cmdlet 只會從可用性群組中移除本機輔助資料庫。 輔助資料庫不再聯結至可用性群組,但資料庫的其他複本會繼續聯結。
範例
範例 1:從可用性群組移除資料庫
PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16"
此命令會從名為 MainAG
的可用性群組中移除名為 Database16
的可用性資料庫。
此命令會在裝載主要複本的伺服器實例上執行。
因此,它會從可用性群組中移除主資料庫及其所有對應的輔助資料庫。
任何次要複本上的這個資料庫不再發生數據同步處理。
範例 2:從可用性群組移除所有資料庫
PS C:\> Get-ChildItem "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases" | Remove-SqlAvailabilityDatabase
此命令會取得屬於 MainAG
的所有可用性資料庫,然後使用管線運算符將它們傳遞至目前的 Cmdlet。 目前的 Cmdlet 會移除每個可用性資料庫。
範例 3:從可用性群組移除輔助資料庫
PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16"
此命令會從名為 SecondaryServer\Instance
的伺服器實例所裝載的次要複本中移除名為 Database16
的輔助資料庫。 已移除輔助資料庫的數據同步處理會停止。
此命令不會影響主資料庫或任何其他輔助資料庫。
範例 4:建立文本以從可用性群組移除資料庫
PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16" -Script
此命令會建立 Transact-SQL 腳本,從名為 MainAG
的可用性群組中移除名為 Database16
的可用性資料庫。
命令不會執行此動作。
參數
-AccessToken
用來向 SQL Server 驗證的存取令牌,作為使用者/密碼或 Windows 驗證的替代方案。
例如,這可用來使用 Service Principal
或 Managed Identity
來連線到 SQL Azure DB
和 SQL 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
指定可用性資料庫,作為這個 Cmdlet 移除 AvailabilityDatabase 物件。
類型: | AvailabilityDatabase[] |
Position: | 1 |
預設值: | None |
必要: | True |
接受管線輸入: | True |
接受萬用字元: | False |
-Path
指定 Cmdlet 移除的可用性資料庫路徑。
類型: | String[] |
Position: | 1 |
預設值: | None |
必要: | True |
接受管線輸入: | 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。