两周前,我中止了 Azure Sql 数据库的恢复。虽然在 Azure 门户中不再可见,但它仍出现在 Sql Server Management Studio 中的数据库列表中。数据库名称后出现“(正在恢复...)”。同样,它出现在购买返回的列表中从 sys.databases 中选择 *。 然而删除数据库返回
Msg 911, Level 16, State 1, Line 8<br/>
Database '<db name>' does not exist.
我怎样才能摆脱它?
答案1
您可以尝试使USE [master]; ALTER DATABASE [<db name>] SET ONLINE
数据库脱离恢复状态,但在您的情况下这可能不起作用。
您可能需要首先使数据库处于工作状态,然后使用WITH RECOVERY
数据库RESTORE
命令的选项将其恢复,以使数据库作为恢复过程的一部分联机。
可以使用 SQL Server Management Studio 中的恢复数据库向导来完成此操作。这样,您可以选择覆盖选项和使用恢复选项。
如果上述两种方法都不起作用Azure PowerShell这将是你的最后一次机会:
Remove-AzSqlInstanceDatabase -Name "Database01" -InstanceName "managedInstance1" -ResourceGroupName "ResourceGroup01" -Force
在本地环境中,您可以停止 SQL Server 服务,重命名或删除 DB 和日志文件,启动 SQL 服务以便能够删除(然后失败的)数据库。
答案2
找到解决办法了,新建一个同名的数据库,恢复的数据库会被新建的数据库替换,然后删除就可以了。