Remove-SqlAvailabilityDatabase
可用性グループから可用性データベースを削除します。
構文
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>]
説明
Remove-SqlAvailabilityDatabase コマンドレットは、可用性グループから可用性データベースを削除します。 InputObject または Path パラメーターは、可用性データベースを指定します。
プライマリ レプリカをホストするサーバー インスタンスでこのコマンドレットを実行すると、プライマリ データベースとそれに対応するすべてのセカンダリ データベースが可用性グループから削除されます。
セカンダリ レプリカをホストするサーバー インスタンスでこのコマンドレットを実行すると、コマンドレットはローカル セカンダリ データベースのみを可用性グループから削除します。 セカンダリ データベースは可用性グループに参加しなくなりましたが、データベースの他のコピーは引き続き結合されます。
例
例 1: 可用性グループからデータベースを削除する
PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16"
このコマンドを実行すると、 Database16
という名前の可用性データベースが、 MainAG
という名前の可用性グループから削除されます。
このコマンドは、プライマリ レプリカをホストするサーバー インスタンスで実行されます。
そのため、プライマリ データベースとそれに対応するすべてのセカンダリ データベースが可用性グループから削除されます。
セカンダリ レプリカでこのデータベースのデータ同期が行われなくなりました。
例 2: 可用性グループからすべてのデータベースを削除する
PS C:\> Get-ChildItem "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases" | Remove-SqlAvailabilityDatabase
このコマンドは、 MainAG
に属するすべての可用性データベースを取得し、パイプライン 演算子を使用して現在のコマンドレットに渡します。 現在のコマンドレットは、各可用性データベースを削除します。
例 3: 可用性グループからセカンダリ データベースを削除する
PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\SecondaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16"
このコマンドは、 Database16
という名前のセカンダリ データベースを、 SecondaryServer\Instance
という名前のサーバー インスタンスによってホストされているセカンダリ レプリカから削除します。 削除されたセカンダリ データベースへのデータ同期が停止します。
このコマンドは、プライマリ データベースまたはその他のセカンダリ データベースには影響しません。
例 4: 可用性グループからデータベースを削除するスクリプトを作成する
PS C:\> Remove-SqlAvailabilityDatabase -Path "SQLSERVER:\Sql\PrimaryServer\InstanceName\AvailabilityGroups\MainAG\AvailabilityDatabases\Database16" -Script
このコマンドは、 Database16
という名前の可用性データベースを MainAG
という名前の可用性グループから削除する Transact-SQL スクリプトを作成します。
このコマンドでは、このアクションは実行されません。
パラメーター
-AccessToken
ユーザー/パスワードまたは Windows 認証の代わりに、SQL Server に対する認証に使用されるアクセス トークン。
これは、たとえば、SQL Azure DB
またはSQL Azure Managed Instance
を使用してService Principal
に接続してManaged Identity
するために使用できます。
使用するパラメーターには、トークンを表す文字列、または PSAccessToken
を実行して返されるGet-AzAccessToken -ResourceUrl https://database.windows.net
オブジェクトのいずれかを指定できます。
このパラメーターは、モジュールの v22 の新機能です。
型: | PSObject |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Confirm
コマンドレットを実行する前に確認を求めるメッセージが表示されます。
型: | SwitchParameter |
Aliases: | cf |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Encrypt
SQL Server に接続するときに使用する暗号化の種類。
この値は、Microsoft.Data.SqlClient ドライバーの SqlConnection オブジェクトの Encrypt
プロパティ SqlConnectionEncryptOption
にマップされます。
モジュールの v22 では、既定値は Optional
です (v21 との互換性のため)。 モジュールの v23 以降では、既定値は "必須" になり、既存のスクリプトに重大な変更が生じる可能性があります。
このパラメーターは、モジュールの v22 の新機能です。
型: | String |
指定可能な値: | Mandatory, Optional, Strict |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-HostNameInCertificate
SQL Server TLS/SSL 証明書の検証に使われるホスト名。 SQL Server インスタンスで Force Encryption が有効になっていて、ホスト名/短縮名を使用してインスタンスに接続する場合は、このパラメーターを渡す必要があります。 このパラメーターを省略した場合、強制暗号化が有効になっている SQL Server インスタンスに接続するには、完全修飾ドメイン名 (FQDN) を -ServerInstance に渡す必要があります。
このパラメーターは、モジュールの v22 の新機能です。
型: | String |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-InputObject
このコマンドレットによって削除される AvailabilityDatabase オブジェクトとして、可用性データベースを指定します。
型: | AvailabilityDatabase[] |
配置: | 1 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | True |
ワイルドカード文字を受け取る: | False |
-Path
コマンドレットによって削除される可用性データベースのパスを指定します。
型: | String[] |
配置: | 1 |
規定値: | None |
必須: | True |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-Script
このコマンドレットは、このコマンドレットが実行するタスクを実行する Transact-SQL スクリプトを返します。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-TrustServerCertificate
信頼を検証するために証明書チェーンのウォークをバイパスしながらチャネルを暗号化するかどうかを示します。
モジュールの v22 では、既定値は $true
です (v21 との互換性のため)。 モジュールの v23 以降では、既定値は "$false" になり、既存のスクリプトに重大な変更が生じる可能性があります。
このパラメーターは、モジュールの v22 の新機能です。
型: | SwitchParameter |
配置: | Named |
規定値: | None |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
-WhatIf
コマンドレットを実行した場合の動作を示します。 コマンドレットは実行されません。
型: | SwitchParameter |
Aliases: | wi |
配置: | Named |
規定値: | False |
必須: | False |
パイプライン入力を受け取る: | False |
ワイルドカード文字を受け取る: | False |
入力
Microsoft.SqlServer.Management.Smo.AvailabilityDatabase
可用性データベースをこのコマンドレットに渡すことができます。