我正在练习SharePoint 2010到2013的迁移,并且在还原数据库时遇到问题。 在SP2010 / SQL2008服务器上备份数据库之后,我试图将其还原到我刚刚在SP2013 / SQL2012服务器上创build的数据库。
虽然用户界面,我已经把目标数据库脱机。 我select.bak文件,select我的目标数据库,然后尝试恢复。 我得到一个错误: Exclusive access could not be obtained because the database is in use.
为什么发生这种情况? 我已经把数据库脱机了,我不知道它可能会被使用。
在恢复窗口中,我尝试去选项,并selectOverwrite the existing database (WITH REPLACE)以及Close existing connections to destination database 。
还是一样的错误信息。 我怎样才能通过这个错误?
你是正在使用数据库的人吗? 🙂
尝试在执行还原之前运行此操作:
USE master Go ALTER DATABASE YourDB SET SINGLE_USER WITH ROLLBACK IMMEDIATE;
这应该踢大家。 如果不是的话,你绝对是目前使用数据库的人。 使用数据库closures任何SSMS窗口并运行:
ALTER DATABASE YourDB SET offline
这里有一些问题,我没有提到哪些是问题的一部分。 这是从SQL 2008实例获取的数据库备份,并在SQL 2012实例上恢复。 T-SQL的这一点终于做到了:
RESTORE DATABASE [WSS_Content_Migrated] FROM DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL11.SQL\MSSQL\Backup\WSS_Content.bak' WITH MOVE 'WSS_Content' TO 'C:\Program Files\Microsoft SQL Server\MSSQL11.SQL\MSSQL\Backup\WSS_Content.mdf', MOVE 'WSS_Content_log' TO 'C:\Program Files\Microsoft SQL Server\MSSQL11.SQL\MSSQL\Backup\WSS_Content.ldf' , REPLACE