[英]Create user with specific SID in SQL Server 2014
我需要在測試服務器上創建一個與實時服務器上的用戶具有相同SID的用戶。 這是由於以下事實:我們經常將數據庫從實時服務器復制到測試服務器以獲取新數據,完成后,我在測試服務器上擁有的用戶將無法訪問復制的數據庫,因為該用戶具有不同的SID而不是實時服務器上。
我想我已經有了解決方案,但是我有點害怕直接運行它。 如果我把事情搞砸了,那我就有麻煩了。 當然,沒有像在實時服務器上運行那樣麻煩,但是仍然如此。 也不是最好固定測試服務器。
USE master
GO
DROP LOGIN myuser
GO
CREATE LOGIN [myuser]
WITH PASSWORD = 'mypassword',
SID = 0xEEEEEEEEEEEEEEEEEEEEEEEEEEEE40EE,
DEFAULT_DATABASE = [MYDB],
DEFAULT_LANGUAGE = [us_english],
CHECK_EXPIRATION = OFF,
CHECK_POLICY = ON
GO
ALTER LOGIN [myuser] ENABLE
GO
USE MYDB
GO
DROP USER myuser
GO
CREATE USER myuser FOR LOGIN myuser
GO
EXEC sp_addrolemember 'db_datareader', 'myuser'
EXEC sp_addrolemember 'db_datawriter', 'myuser'
這個對嗎??
您實際上不需要這樣做。 您需要做的只是同步將用戶與登錄名關聯的SID。 如果您嘗試使用的SID在您的實例中存在,會發生什么?
使用此處發布的腳本Erland容易得多
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.