SQL Server

DB 이전 후 계정 변경

서른마른다섯 2013. 4. 30. 14:28


DB를 백업하고 다른 머신에서 복원을 하게될 경우 계정을 다시 매핑시켜줘야 한다.


sp_changedbowner sp를 이용하여 DB의 Owner를 변경하고

sp_change_users_login를 이용하여 사용자를 다시 매핑시켜준다.

sp_change_users_login sp를 실행하기 전에 로그인을 먼저 생성해 두어야 한다.


아래는 모든 데이터베이스에 Owner를 변경하고 사용자를 매핑시키는 스크립트다.

Report Service를 사용하는 경우나 변경되지 않아야 하는 데이터베이스를 적절히 제거한 후에 사용하도록 하자.


DECLARE

    @strOnwer    VARCHAR(30)

,   @strUserName VARCHAR(30)

SELECT

    @strOnwer    = 'Owner'

,   @strUserName = 'UserName'

SELECT

    'use ' + name + ';EXEC sp_changedbowner '''+ @strOnwer + ''';' AS Change_DB_Owner

,   'use ' + name + ';EXEC sp_change_users_login ''Update_One'', ''' + @strUserName + ''', ''' + @strUserName + ''';' AS Mapping_OldUser_NewUser

FROM sys.databases

WHERE database_id > 4

OPTION (MAXDOP 1)

'SQL Server' 카테고리의 다른 글

DB 업그레이드 절차  (0) 2013.07.04
tempdb 튜닝  (0) 2013.07.04
SSIS를 이용하여 Excel 데이터 DB로 넣기  (0) 2012.09.25
unable to begin a distributed transaction  (0) 2012.07.24
Index Rebuild  (0) 2012.07.19