[SQL Server] 錯誤 - master 資料庫中記錄的資料庫擁有者 SID 與資料庫 'xxx' 中記錄的資料庫擁有者 SID 不同

  • 1208
  • 0
  • 2018-12-13

[不專業廢廢筆記] SQL Server 錯誤 - master 資料庫中記錄的資料庫擁有者 SID 與資料庫 'xxx' 中記錄的資料庫擁有者 SID 不同

純筆記  純筆記  純筆記 不是教學文XD

 

錯誤處理

 

問題:

master 資料庫中記錄的資料庫擁有者 SID 與資料庫 'xxx' 中記錄的資料庫擁有者 SID 不同。您應該使用 ALTER AUTHORIZATION 陳述式重設資料庫 'xxx' 的擁有者,以更正這個狀況。

解決方式:

需要更改資料庫owner sid

 

查詢資料庫 owner sid等資訊

SELECT d.name N'資料庫',
       p.name N'資料庫擁有者',
       d.owner_sid N'安全性識別碼',
       is_read_only,
       state_desc
FROM   sys.databases d
INNER  JOIN sys.server_principals p
ON     d.owner_sid = p.sid
WHERE  state = 0
AND    is_read_only = 0
AND    d.name NOT IN ('master', 'model', 'tempdb', 'distribution')
ORDER  BY p.name;

 

更改資料庫owner sid

USE xxx
GO

ALTER AUTHORIZATION ON DATABASE::xxx TO sa
GO

 

參考文章 :

[SQL Server]:變更、移轉(ALTER AUTHORIZATION)全部資料庫的擁有者(database owner)為 sa

SQL 2005 無法部署 CLR