今天想在sql server2005下復制一個數據庫,結果最後一步出錯,復制沒成功反而導致數據庫打不開了,
名稱後出現"單個用戶",估計是進行復制的時候自動將其改為了單用戶模式,可通過執行如下語句恢復多用戶模式。
原理是先kill占用了數據庫的那個進程,然後設置數據庫為多用戶模式。
USE master;
GO
DECLARE @SQL VARCHAR(MAX);
SET @SQL=''
SELECT @SQL=@SQL+'; KILL '+RTRIM(SPID)
FROM mastersysprocesses
WHERE dbid=DB_ID('數據庫名');
EXEC(@SQL);
GO
ALTER DATABASE 數據庫名 SET MULTI_USER;