繁体   English   中英

如何断开与 Azure SQL 托管实例的打开连接?

[英]How do I disconnect open connections to an Azure SQL Managed Instance?

我正在研究将数据库还原到我的 Azure SQL 托管实例的过程,其中涉及删除现有数据库并在其位置恢复备份(因为托管实例不支持 WITH REPLACE)。

但是,我遇到了断开任何打开连接的问题,因此我可以执行此操作。 在更新发生之前应警告用户,但我们不能保证没有打开的连接。

通常,我会按照以下方式做一些事情:

ALTER DATABASE AdventureWorks2012 SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
--RESTORE HERE
ALTER DATABASE AdventureWorks2012 SET MULTI_USER;

但是,当我尝试对托管实例中的数据库运行类似的操作时,出现以下错误:

不支持此 ALTER DATABASE 语句。 更正语法并再次执行该语句。 ALTER DATABASE 语句失败。

有没有办法在 Azure SQL 托管实例中实现这一点?

在 RESTORE FROM URL in Managed Instance 中,您甚至无法替换现有数据库。

所以要么在 RESTORE 之前删除或重命名数据库。 DROP DATABASE MyDbALTER DATABASE MyDb MODIFY NAME = MyDb_old都会终止与数据库的现有连接。

或者,您可以使用托管时间点还原将现有数据库还原到以前的时间点。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM