SQL Server/SQL Server Tip

파일 접근 권한으로 인한 DB복원 실패 작업 해결하기

SungWookKang 2015. 7. 17. 10:11
반응형

파일 접근 권한으로 인한 DB복원 실패 작업 해결하기

 

  • Version : SQL Server 2000, 2005, 2008, 2008R2, 2012

 

DB를 복원하는 방법에는 여러 가지 방법이 있다. 지금까지 다룬 포스팅에서 보면 백업파일에서 복원하는 방법, 스냅샷 파일에서 복원하는 방법, MDF를 이용한 복원 방법 등 이 외에 매우 다양한 방법이 있다.

그런데 전달 받은 백업 파일 또는 데이터 파일을 복원하려 할 때 파일에 접근 권한 자체가 되지 않아 복원 작업이 실패하는 경우가 있다. 나의 경우에도 퍼블리셔에서 전달 받은 파일이 계정 권한으로 인하여 복원되지 않는 경험이 있다. 이때 어떻게 해결하는지 실습을 통해서 알아 보자.

 

먼저 계정에 다른 파일 엑세스 권한을 다르게 하기 위하여 SSMS에서 윈도우 계정으로 로그인 하여 데이터베이스를 분리 하였다.

SP_DETACH_DB SW_TEST

 

 

 

또 다른 SSMS를 실행하여 윈도우 계정이 아닌 SQL 계정으로 로그인하여 데이터베이스 연결을 시도해 보자. 다음과 같이 에러가 발생 할 것이다.

 

 

분리되어 있는 데이터베이스 파일(MDF파일)에서 마우스 오른쪽을 클릭하여 [속성] – [보안]을 확인해 보면 현재 파일 접근 권한이 윈도우 계정만 등록된 것을 확인 할 수 있다.

 

 

[편집]에서 사용자 계정 및 권한을 추가하자. 실습을 위해서 편의상 [Everyone]을 추가하고 모든 권한을 지정해 주었다.

 

 

SQL 계정으로 접속한 SSMS에서 다시 한번 데이터베이스 연결을 시도하여 보자. 성공적으로 데이터베이스가 연결되는 것을 확인 할 수 있다.

 

 

만약 전달 받은 백업 파일 또는 데이터 파일에 접근이 되지 않아 복원이 안될 때에는 파일 접근 권한을 꼭 살펴 보자.

 

그런데 테스트 과정에서 대부분의 경우에는 본인의 윈도우 계정으로 SSMS를 실행하여 복원 작업을 하기 때문에 기본적으로 자신의 계정이 Administrator 그룹에 속해 있어 특별히 권한 없이도 복원이 되는 것을 확인 할 수 있었다.

 

2012-11-19 / 강성욱 / http://sqlmvp.kr

 

 

 

반응형