Windows DB

MS-SQL 개체 소유권 변경

2008.09.18 03:14

레이쩡 조회 수:24311

sp_changeobjectowner
현재 데이터베이스에 있는 개체의 소유자를 변경합니다.

구문
sp_changeobjectowner [ @objname = ] 'object' , [ @newowner = ] 'owner'

인수
[@objname =] 'object'

현재 데이터베이스 안에 있는 기존 테이블, 뷰 또는 저장 프로시저의 이름입니다. object는 nvarchar(517)이며, 기본값은 없습니다. object는 existing_owner.object 형식으로 기존 개체 소유자로 한정될 수 있습니다.

[@newowner =] 'owner'

개체의 새 소유자가 될 보안 계정의 이름입니다. owner는 sysname이며, 기본값은 없습니다. owner는 반드시 현재 데이터베이스 내의 유효한 Microsoft® SQL Server™ 사용자 또는 역할이거나 Microsoft Windows NT® 사용자 또는 그룹이어야 합니다. Windows NT 사용자 또는 그룹을 지정할 경우 sp_grantdbaccess를 사용하여 추가하고 데이터베이스에서 Windows NT 사용자 또는 그룹으로 알고 있는 이름을 지정합니다.

반환 코드 값
0(성공) 또는 1(실패)

비고
개체의 소유자(또는 개체를 소유하고 있는 그룹 또는 역할의 구성원)은 개체에 대해 특수 권한을 갖습니다. 개체 소유자는 개체와 소유된 INSERT, UPDATE, DELETE, SELECT 또는 EXECUTE 등과 같은 모든 Transact-SQL문을 실행할 수 있으며, 개체에 대한 사용 권한을 관리할 수 있습니다.

개체를 소유한 보안 계정을 삭제해야 하지만 개체는 계속 유지해야 하는 경우에는 sp_changeobjectowner를 사용하여 개체의 소유자를 변경하십시오. 이 프로시저는 개체에서 기존의 모든 권한을 제거합니다. sp_changeobjectowner를 계속 실행하려면 모든 권한을 다시 적용해야 합니다.

이러한 이유 때문에, sp_changeobjectowner를 실행하기 전에 기존의 사용 권한을 스크립트하는 것이 좋습니다. 개체의 소유권이 변경되면 사용 권한을 다시 적용하기 위해 스크립트를 사용할 수도 있습니다. 사용 권한 스크립트의 개체 소유자를 수정한 후에 실행해야 합니다. 데이터베이스 스크립팅에 관한 자세한 내용은 데이터베이스 문서화 및 스크립팅을 참조하십시오.

데이터베이스의 소유자를 변경하려면 sp_changedbowner를 사용하십시오.

사용 권한
sysadmin고정 서버 역할 구성원, db_owner 고정 데이터베이스 역할의 구성원 또는 db_ddladmin 및 db_securityadmin 고정 데이터베이스 역할 모두의 구성원만이 sp_changeobjectowner를 실행할 수 있습니다.

예제
다음은 authors 테이블의 소유자를 CorporateGeorgeW로 변경하는 것을 보여 주는 예제입니다.

EXEC sp_changeobjectowner 'authors', 'CorporateGeorgeW'


 
예제
다음은 authors 테이블의 소유자를 CorporateGeorgeW로 변경하는 것을 보여 주는 예제입니다.
EXEC sp_changeobjectowner 'authors', 'CorporateGeorgeW'

 

sp_change_users_login 프로시져를 사용하여 로그인과 사용자를 매핑하시면 됩니다.
아래의 온라인 설명서 예제를 참고하세요..

사용자의 로그인 변경 다음은 pubs 데이터베이스의 Mary라는 사용자와 기존 로그인의 연결을 변경하여(sp_addlogin 를 사용하여 추가된) NewMary로의 연결을 보여 주는 예제입니다.


--Add the new login.
USE master
go
EXEC sp_addlogin "NewMary"
go


--Change the user account to link with the "NewMary" login.
USE pubs
go
EXEC sp_change_users_login "Update_One", "Mary", "NewMary" ,,


참고. 만약 기존의 로그인정보를 유지하고자 하는 경우에는

EXEC sp_change_users_login "Update_One", "Mary", "Mary" 와 같이 기존과 변경되는 정보를 같이 하면 되겠습니다.

 

프로시저 sp_changedbowner

sp_changedbowner 사용자, DB이름

예)sp_changedbowner  host_dba,hosting

번호 제목 글쓴이 날짜 조회 수
51 [MS SQL]트랜잭션 사용 호스트웨이 2015.09.15 1198
50 MS-SQL 서버 메모리 사용량 제한 호스트웨이 2012.12.14 1537
49 mssql 백업파일 내의 MDF,LDF 이상 확인 호스트웨이 2015.09.18 1709
48 [MSSQL] 다른 테이블로 데이터 INSERT 호스트웨이 2015.09.16 1957
47 mssql-table backup(테이블 백업/복원) 호스트웨이 2015.09.09 2073
46 MSSQL Express Backup 자동화 file 호스트웨이 2015.05.06 2228
45 [MSSQL]인덱스 (INDEX) 사용하기 호스트웨이 2015.09.16 2387
44 [MS SQL]ssms 단축키 호스트웨이 2015.09.15 2557
43 MDF, LDF 파일 복사하는 방법 호스트웨이 2015.09.18 3214
42 데이터베이스 경로 변경하기 (MDF,LDF파일 경로 변경하기) 호스트웨이 2012.11.15 3346
41 테이블에 있는 악성코드 제거 하기위한 방법 file 호스트웨이 2012.08.31 5511
40 테이블에 있는 악성코드 제거 하기 위한 방법 2 file 호스트웨이 2012.09.06 5741
39 DBConnectionOpen오류 호스트웨이 2012.07.14 6060
38 DB 마이그레이션 방법 호스트웨이 2012.04.27 6213
37 Windows Server2008 에서 MSSQL2005 Reporting Service 설치하기 file 호스트웨이 2012.03.09 6305
36 Windows2003 SP2 에서 SQL2008 설치시 오류(0X5EBE5729) 호스트웨이 2012.08.31 6854
35 [MS SQL]다른 DB에 있는 테이블 이동/복사하기 호스트웨이 2015.09.15 6863
34 SQL Server 2005 설치시 데이터 저장 경로 변경 file 호스트웨이 2012.09.14 7480
33 Windows Server 2008에서 MS SQL 2008 설치오류에 대한 해결[역할관리도구] file 호스트웨이 2012.08.31 7673
32 DBMS효율적으로 관리하기 - LDF 축소 호스트웨이 2012.05.11 8227