SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

SQL Database の長期保存バックアップで使用した Recovery Service が削除できない場合の対応方法

leave a comment

SQL Database の 長期保存バックアップ は、 Recovery Service 上に取得されます。
この Recovery Service を削除しようとした際に、ポータル上の内容ではすべての設定やコンテナーが存在していない状態でも、削除がエラーになることがあります。

この場合、Azure RecoveryServiceVault can’t be removed? の対応をすると削除ができるようになります。

$vault = Get-AzureRmRecoveryServicesVault -Name "VaultName"
Set-AzureRmRecoveryServicesVaultContext -Vault $vault
$container = Get-AzureRmRecoveryServicesBackupContainer -ContainerType AzureSQL -FriendlyName $vault.Name
$item = Get-AzureRmRecoveryServicesBackupItem -Container $container -WorkloadType AzureSQLDatabase
$availableBackups = Get-AzureRmRecoveryServicesBackupRecoveryPoint -Item $item
$availableBackups
$containers = Get-AzureRmRecoveryServicesBackupContainer -ContainerType AzureSQL -FriendlyName $vault.Name
ForEach ($container in $containers)
{
    $items = Get-AzureRmRecoveryServicesBackupItem -container $container -WorkloadType AzureSQLDatabase
    ForEach ($item in $items)
    {
        Disable-AzureRmRecoveryServicesBackupProtection -item $item -RemoveRecoveryPoints -ea SilentlyContinue
    }
    Unregister-AzureRmRecoveryServicesBackupContainer -Container $container
}
Remove-AzureRmRecoveryServicesVault -Vault $vault

 
長期保存バックアップで使用しているサイズについても、ポータルから確認できる使用サイズに含まれているようなのですが、この領域を削除するための方法が、現時点のポータルからは用意されていないため、PowerShell を使用して、長期保存バックアップのコンテナーを明示的に削除する必要があるようですね。
これで削除を行えば、Recovery Service 自体も削除できるようになります。

Share

Written by Masayuki.Ozawa

7月 17th, 2017 at 9:09 pm

Posted in SQL Database

Tagged with

Leave a Reply