Windows DB

MS-SQL 개체 소유권 변경

2008.09.18 03:14

레이쩡 조회 수:24880

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

번호 제목 글쓴이 날짜 조회 수
30 Windows Server 2008에서 MS SQL 2008 설치오류에 대한 해결[역할관리도구] file 호스트웨이 2012.08.31 13785
29 SQL System Query dalgri 2009.05.14 13296
28 System Table Field Query file dalgri 2009.05.14 13230
27 SQL 2008 Express 버전 설치 2 file 호스트웨이 2010.04.01 13047
26 MSSQL ErrorLog 지우기 file 호스트웨이 2012.07.14 12744
25 Windows SQL 2008 Tunning Seminar file dalgri 2009.05.14 12532
24 Windows2003 SP2 에서 SQL2008 설치시 오류(0X5EBE5729) 호스트웨이 2012.08.31 12467
23 Guide to Secure Configuration of SQL W2K file dalgri 2009.05.14 11608
22 MS-SQL 사용자 DB 경로 변경 호스트웨이 2012.05.04 11301
21 테이블에 있는 악성코드 제거 하기 위한 방법 2 file 호스트웨이 2012.09.06 11292
20 MS SQL 2008에서 메뉴 관리툴의 한글깨짐 현상 방지 file 호스트웨이 2012.03.16 11261
19 MDF, LDF 파일 복사하는 방법 호스트웨이 2015.09.18 11225
18 MSSQL DB Lock 해제 file 호스트웨이 2012.06.23 10887
17 SQL 서버 인증모드 변경 file 호스트웨이 2012.04.20 10693
16 데이터베이스 경로 변경하기 (MDF,LDF파일 경로 변경하기) 호스트웨이 2012.11.15 10671
15 [MS SQL]ssms 단축키 호스트웨이 2015.09.15 10456
14 mssql 백업파일 내의 MDF,LDF 이상 확인 호스트웨이 2015.09.18 10089
13 SQL2008 설치시 성능 카운터 레지스트리 하이브 일관성 실패 file 호스트웨이 2012.07.14 10043
12 DBMS효율적으로 관리하기 - LDF 축소 호스트웨이 2012.05.11 9600
11 MSSQL Master DB 이동 file 호스트웨이 2012.05.11 9428