我正在尝试删除测试数据库上的长期保留策略并删除附加到它的保管库。我能够禁用该策略但是当我尝试删除保管库时,我收到错误:
无法删除保险柜,因为保管库中存在现有资源。请确保没有与此保管库关联的备份项,受保护服务器或备份管理服务器。在继续删除之前,取消注册与此库关联的以下容器:Sql; mydatabase123; mysqlserver123-svr从Vault中取消注册所有容器,然后重试删除Vault
我想完全取消他们的联系,这样我就可以设置另一个长期政策与另一个保险库,并测试我可以用azure sql和vaults做的限制。
知道如何撤消我所做的事吗?谢谢!
P.S。我发现这个问题也提出here但没有解决方案。
答案 0 :(得分:1)
请尝试使用PowerShell删除恢复保险库作为解决方法。
$vault = Get-AzureRmRecoveryServicesVault -Name "TestRecoveryServiceVault"
Remove-AzureRmRecoveryServicesVault -Vault $vault
Remove-AzureRmRecoveryServicesVault -Vault $vault -Force
无论保管库的内容如何,上面的cmdlet都将删除恢复保险库。
答案 1 :(得分:1)
保险库中有SQL备份。您需要找到SQL备份并删除它们。请尝试以下脚本。
$vault = Get-AzureRmRecoveryServicesVault -Name "VaultName"
Set-AzureRmRecoveryServicesVaultContext -Vault $vault
#VIEW THE BACKUP ITEMS
$container = Get-AzureRmRecoveryServicesBackupContainer -ContainerType AzureSQL -FriendlyName $vault.Name
$item = Get-AzureRmRecoveryServicesBackupItem -Container $container -WorkloadType AzureSQLDatabase
$availableBackups = Get-AzureRmRecoveryServicesBackupRecoveryPoint -Item $item
$availableBackups
#REMOVE THE BACKUP ITEMS AND VAULT
$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
您也可以查看question。