FIX: SQL Server 2008 또는 SQL Server 2008 r 2에서 백업을 만들기 전에 투명 한 데이터 암호화를 사용 하지 않으면 SQL Server 다른 인스턴스에서 데이터베이스의 백업을 복원할 수 없습니다.

적용 대상: SQL Server 2008 Service Pack 2SQL Server 2008 R2

Microsoft는 Microsoft SQL Server 2008 배포 하 고 Microsoft SQL Server 2008 r 2를 다운로드 가능한 하나의 파일로 해결 합니다. 수정 프로그램은 계속 누적 되는 형태 이므로 각 새 릴리스에 모든 핫픽스를 포함 하며 수정 프로그램 릴리스의 이전 SQL Server 2008 또는 SQL Server 2008 r 2에 포함 된 모든 보안 수정 프로그램

증상


다음과 같은 경우를 생각해 볼 수 있습니다.
  • Microsoft SQL Server 2008 R2 또는 SQL Server 2008 데이터베이스에 투명 한 데이터 암호화를 사용합니다.
  • 데이터베이스를 암호화 함
  • 즉시 암호화를 해제 한 후 데이터베이스를 백업 합니다.
  • 백업을 사용 하 여 SQL Server 다른 인스턴스에서 데이터베이스를 복원 하려고 합니다.
이 시나리오에서는 복원 작업이 실패 하 고 다음과 유사한 오류 메시지가 나타납니다.
System.Data.SqlClient.SqlError: 파일 "< 데이터베이스 이름 > _log" 제대로 초기화 하지 못했습니다. 자세한 내용은 오류 로그를 검사 합니다. (Microsoft.SqlServer.Smo)
그러나 오류 로그에 정보가 없습니다. 데이터베이스를 백업 하기 전에 데이터베이스에 대 한 암호화 키를 제거 하면 데이터베이스를 복원 하려고 할 때 다음과 같은 오류 메시지가 나타납니다.
System.Data.SqlClient.SqlError: '0xCB62FF76463A6BF86E8F769B541BA6483AFC2FF2' 지문이 있는 서버 인증서를 찾을 수 없습니다. (Microsoft.SqlServer.Smo)

해결 방법


누적 업데이트 정보

SQL Server 2008 서비스 팩 1

이 문제에 대 한 수정 프로그램은 먼저 SQL Server 2008 서비스 팩 1 용 누적 업데이트 10에서 릴리스 되었습니다. 이 누적 업데이트 패키지에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
2279604 SQL Server 2008 서비스 팩 1 용 누적 업데이트 패키지 10
참고 빌드는 계속 누적 되는 형태 이므로 각 새 수정 프로그램 릴리스의 모든 핫픽스와 들어 및 이전 SQL Server 2008에 포함 된 모든 보안 수정 프로그램 릴리스의 수정. 이 핫픽스가 포함 된 최신 수정 릴리스를 적용 고려 하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
970365 SQL Server 2008 빌드 SQL Server 2008 서비스 팩 1이 출시 된 이후에 릴리스된
Microsoft SQL Server 2008 핫픽스는 특정 SQL Server 서비스 팩에 대 한 만들어졌습니다. SQL Server 2008 서비스 팩 1을 설치 하려면 SQL Server 2008 서비스 팩 1 핫픽스를 적용 해야 합니다. 기본적으로 SQL Server 서비스 팩에서 제공 되는 모든 핫픽스는 다음 SQL Server 서비스 팩에 포함 됩니다.

SQL Server 2008 서비스 팩 2

이 문제에 대 한 수정 프로그램은 먼저 SQL Server 2008 서비스 팩 2 용 누적 업데이트 1에서 릴리스 되었습니다. 이 누적 업데이트 패키지에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
2289254 SQL Server 2008 서비스 팩 2 용 누적 업데이트 1
참고 빌드는 계속 누적 되는 형태 이므로 각 새 수정 프로그램 릴리스의 모든 핫픽스와 들어 및 이전 SQL Server 2008에 포함 된 모든 보안 수정 프로그램 릴리스의 수정. 이 핫픽스가 포함 된 최신 수정 릴리스를 적용 고려 하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
2402659 SQL Server 2008 빌드 SQL Server 2008 서비스 팩 2가 출시 된 이후에 릴리스된

SQL Server 2008 R2

이 문제에 대 한 수정 누적 업데이트 4에서 처음 릴리스된. SQL Server 2008 r 2에 대 한이 누적 업데이트 패키지를 구하는 방법에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
2345451 SQL Server 2008 r 2 용 누적 업데이트 패키지 4
참고 빌드는 계속 누적 되는 형태 이므로 각 새 수정 프로그램 릴리스의 모든 핫픽스와 들어 및 이전 SQL Server 2008 r 2에 포함 된 모든 보안 수정 프로그램 릴리스의 수정. 이 핫픽스가 포함 된 최신 수정 릴리스를 적용 고려 하는 것이 좋습니다. 자세한 내용을 확인하려면 다음 문서 번호를 클릭하여 Microsoft 기술 자료 문서를 참조하십시오.
981356 SQL Server 2008 R2 빌드는 SQL Server 2008 R2가 출시된 이후에 출시되었습니다.

상태


Microsoft는 "적용 대상" 절에 나열한 제품에서 이 문제를 확인했습니다.

문제를 재현하는 방법

  1. 마스터 키를 만듭니다. 다음은 마스터 키를 생성 하는 코드 샘플입니다.
    use masterCreate Master Key encryption by password = 'Password01!';go
  2. 만들거나 마스터 키로 보호 되는 인증서를 가져옵니다. 다음은 마스터 키로 보호 되는 인증서를 생성 하는 코드 샘플입니다.
    create certificate cert_testDB_encryptDEK  authorization dbowith subject='Certificate to encrypt the DEK of testDB'
  3. 새 데이터베이스를 만들고 데이터베이스 암호화 키를 만들려면 다음 키를 인증서에 의해 보호. 다음은 새 데이터베이스를 만들고, 데이터베이스 암호화 키를 생성 하는 코드 샘플 및 다음 키 인증서를 사용 하 여 보호 하는:
    create Database testDBuse testDBCreate database encryption key with algorithm=AES_128encryption by server certificate cert_testDB_encryptDEK  
  4. 암호화를 사용 하 여 데이터베이스를 설정 합니다. 다음은 암호화를 사용 하 여 데이터베이스를 설정 하는 코드 샘플입니다.
    Alter database testDB set encryption on 
  5. 데이터베이스에 대 한 암호화 사용 안 함 다음은 데이터베이스에 대 한 암호화를 사용 하지 않도록 설정 하는 코드 샘플입니다.
    Alter database testDB set encryption off 
  6. 데이터베이스 백업과 다음 다른 버전의 SQL Server 백업을 복원 합니다.

참조


투명 한 데이터 암호화 (TDE)에 대 한 자세한 내용은 다음 Microsoft Developer Network (MSDN) 웹 사이트를 방문 하십시오.SQL Server 대 한 증분 서비스 모델에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
935897 보고 된 문제에 대 한 핫픽스를 제공 하는 SQL Server 팀 으로부터 증분 서비스 모델 가능
SQL Server 업데이트의 명명 스키마에 대 한 자세한 내용은 Microsoft 기술 자료의 다음 문서 번호를 클릭 합니다.
822499Microsoft SQL Server 소프트웨어 업데이트 패키지의 새 명명 스키마
소프트웨어 업데이트 용어에 대한 자세한 내용을 보려면, 다음 문서 번호를 클릭하여 Microsoft 기술 자료의 문서를 확인하십시오.
824684 Microsoft 소프트웨어 업데이트를 설명하는 데 사용되는 표준 용어에 대한 설명