我正在尝试删除 SQL Server 2005 中的现有数据库。我的第一次尝试产生了以下错误:
5030:数据库不能独占
锁定以执行操作。
此后我已经杀死了所有正在访问数据库的进程。我还删除了它之前涉及的复制订阅。
除了 SQL Server 进程和复制之外,您是否想过还有什么可以锁定它?
Update: 我重新启动了服务器,问题就解决了。我试图避免这种情况,因为这是一个生产服务器,但是嘿,你能做什么?
生产服务器中有如此多的连接使用数据库,但您想删除它吗? :)
尽管如此,如何将所有人从数据库中踢出:
USE [dbname];
ALTER DATABASE [dbname] SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
然后删除数据库:
USE [master];
DROP DATABASE [dbname];
之间仍然存在很小的机会之窗USE [master];
and DROP DATABASE ...
其中一些其他连接可以获取数据库上的 1 个允许的锁,但通常不值得解决这个问题。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)