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の認証に使用されるアクセス トークン。

これは、たとえば、 または Managed Identityに接続SQL Azure DBして SQL Azure Managed Instance 使用するために使用Service Principalできます。

使用するパラメーターには、 を実行Get-AzAccessToken -ResourceUrl https://database.windows.netして返されるトークンまたはオブジェクトをPSAccessToken表す文字列を指定できます。

このパラメーターは、モジュールの v22 の新機能です。

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

-Confirm

コマンドレットの実行前に確認を求めるメッセージが表示されます。

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 インスタンスが Force Encryption に対して有効になっており、hostname/shortname を使用してインスタンスに接続する場合は、このパラメーターを渡す必要があります。 このパラメーターを省略した場合、強制暗号化が有効になっているSQL Server インスタンスに接続するには、完全修飾ドメイン名 (FQDN) を -ServerInstance に渡す必要があります。

このパラメーターは、モジュールの v22 の新機能です。

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

-InputObject

このコマンドレットによって削除される AvailabilityDatabase オブジェクトとして、可用性データベースを指定します。

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

-Path

コマンドレットによって削除される可用性データベースのパスを指定します。

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

-Script

このコマンドレットによって、このコマンドレットが実行するタスクを実行する Transact-SQL スクリプトが返されることを示します。

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

コマンドレットの実行時に発生する内容を示します。 このコマンドレットは実行されません。

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

入力

Microsoft.SqlServer.Management.Smo.AvailabilityDatabase

可用性データベースをこのコマンドレットに渡すことができます。