Remove-SqlAvailabilityDatabase

從可用性群組中移除可用性資料庫。

Syntax

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

Description

Remove-SqlAvailabilityDatabase Cmdlet 會從可用性群組中移除可用性資料庫。 InputObjectPath 參數會指定可用性資料庫。

如果您在裝載主要複本的伺服器實例上執行此 Cmdlet,Cmdlet 會從可用性群組中移除主資料庫和所有對應的輔助資料庫。

如果您在裝載次要複本的伺服器實例上執行此 Cmdlet,Cmdlet 只會從可用性群組中移除本機輔助資料庫。 輔助資料庫不再加入可用性群組,但資料庫的其他複本會繼續聯結。

範例

範例 1:從可用性群組中移除資料庫

PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16"

此命令會從名為的可用性群組中移除名為 Database16MainAG的可用性資料庫。 此命令會在裝載主要複本的伺服器實例上執行。 因此,它會從可用性群組中移除主資料庫及其所有對應的輔助資料庫。 任何次要複本上的這個資料庫都不再發生數據同步處理。

範例 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"

此命令會從名為的伺服器實例所裝載的次要複本中移除名為 Database16SecondaryServer\Instance的輔助資料庫。 已移除輔助資料庫的數據同步處理會停止。 此命令不會影響主要資料庫或任何其他次要資料庫。

範例 4:建立文稿以從可用性群組中移除資料庫

PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16" -Script

此命令會建立 Transact-SQL 腳本,從名為的可用性群組中移除名為 Database16MainAG的可用性資料庫。 此命令不會執行此動作。

參數

-AccessToken

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

例如,這可用來連線至 SQL Azure DB 或使用 或使用 SQL Azure Managed InstanceService PrincipalManaged Identity

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

這個參數是模組 v22 的新功能。

Type:PSObject
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

在執行 Cmdlet 前提示您確認。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Encrypt

連接到 SQL Server 時要使用的加密類型。

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

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

這個參數是模組 v22 的新功能。

Type:String
Accepted values:Mandatory, Optional, Strict
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-HostNameInCertificate

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

這個參數是模組 v22 的新功能。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-InputObject

指定這個 Cmdlet 移除的可用性資料庫作為 AvailabilityDatabase 物件。

Type:AvailabilityDatabase[]
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Path

指定 Cmdlet 移除的可用性資料庫路徑。

Type:String[]
Position:1
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-Script

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

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TrustServerCertificate

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

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

這個參數是模組 v22 的新功能。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

顯示執行 Cmdlet 後會發生的情況。 Cmdlet 並不會執行。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

輸入

Microsoft.SqlServer.Management.Smo.AvailabilityDatabase

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