2009-03-04 7 views
1

MS SQL 2005에서 일부 인스턴스 만 복구 할 수있는 SQL 인증 사용자를 설치하고 싶습니다.일부 (전부는 아님) 데이터베이스를 복원 할 수있는 SQL 인증 사용자

모든 데이터베이스에 적용되는 것처럼 보이기 때문에 서버 역할을 사용해야하는지 잘 모르겠지만 데이터베이스 역할 구성원 자격이 올바르지 않습니다 (SQL 사용자가 잠재적으로 ' 데이터베이스 역할 구성원이없는 백업을 복원 한 경우 복원 능력을 잃게됩니다.

어떻게하면됩니까?

답변

2

사용자를 그렇게 설정할 수 없습니다. 이 권한은/서버/로그인 수준

로그인시 사용자가 밝히는 "dbcreator"을 가질 수 데이터베이스 위에 앉아 :

... 그리고 변경하고 자신의 데이터베이스를 복원 할 수 있습니다.

심지어 GRANT를 사용하여, 방법에서, 드롭을 복원 작성 " GRANT CREATE ANY DATABASE"

하는, 말, 불가능하지는 않지만 까다로운 일이 될 것입니다. 또는 단순히 생성.

내가 가장 좋은 해결책을 제안 하겠지만 (아마도 듣고 싶지 않은 것 ...) 권한을 확인하는 마스터에 자신의 저장 프로 시저를 만드는 것이고 로그인이 a로 설정된 경우 RESTORE 명령을 실행하는 것이 좋습니다. 해당 DB의 사용자

예 : sp_checkandrestore 'dbname', 'backupfile'

관련 문제