[不專業廢廢筆記] 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