我有一个 SQL 脚本,可以备份一个数据库,然后通过另一个数据库恢复它。我遇到的问题是被覆盖的数据库被用户锁定打开,因此作业失败。我可以手动杀死附加的用户,它运行良好,但我需要这个进程每晚自动运行。有没有一个我可以每天晚上执行的终止命令?或者恢复选项中有什么东西可以做同样的事情吗?
有什么想法吗?
谢谢
最佳答案
如果客户端重新连接,KILL 并不总是有效
我会考虑使数据库脱机(或仅 dbo)然后恢复。这样将阻止进一步的重新连接。
ALTER DATABASE TargetDB SET OFFLINE WITH ROLLBACK IMMEDIATE
或
ALTER DATABASE TargetDB SET RESTRICTED_USER WITH ROLLBACK IMMEDIATE
关于SQL Server 终止命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6451512/