2014-09-11 80 views
0

數據庫的原主人已經離開了公司,所以我想將所有者更改爲自己,但是,它失敗了。
當我通過SSMS試着:數據庫屬性 - >文件 - >所有者,它給像錯誤消息:SQL服務器2012:無法更改數據庫所有者

Set owner failed for Database XYZ.
An exception occurred while executing a Transact-SQL statement or batch.
Lock request time out period exceeded. (Microsoft SQL Server, Error: 1222)

當我通過腳本試圖與查詢:

ALTER AUTHORIZATION ON DATABASE::XYZ TO [MyUserName]

查詢似乎被阻止並永遠運行而沒有成功。
任何人都可以幫忙嗎?

回答

0

查詢使用dbo擁有的對象將獲得對現有的數據庫所有者主體架構穩定性鎖。 ALTER AUTHORIZATION將需要對同一個主體進行架構修改鎖定,並因此由於不兼容的鎖定而被阻止。您可以查詢sys.dm_tran_locks以確定阻塞會話。

+0

感謝Dan的迴應,您能否詳細說明如何診斷問題?查詢返回很多行... – 2014-09-11 12:23:48

+0

通常,使用sp_who2或SSMS中的活動監視器識別阻塞會話的快速方法。如果這是一個活動數據庫,您可能難以在維護時段外更改所有者。 – 2014-09-11 13:15:01

相關問題