DetailPage-MSS-KB

기술 자료

기술 자료: 900497 - 마지막 검토: 2006년 1월 13일 금요일 - 수정: 1.1

베타 정보
이 문서에서는 Microsoft 제품의 베타 릴리스에 대해 설명합니다. 이 문서의 정보는 "있는 그대로" 제공되며 사전 통보 없이 변경될 수 있습니다.

이 베타 제품은 Microsoft의 공식 제품 지원 서비스를 받을 수 없습니다. 베타 릴리스 지원을 얻는 방법에 대한 자세한 내용은 베타 제품 파일에 포함된 설명서를 참조하거나 릴리스를 다운로드한 웹 사이트를 확인하십시오.

현상

Microsoft SQL Server 2000을 Microsoft SQL Server 2005로 업그레이드한 경우 SQL Server 2005가 시작되지 않습니다. 응용 프로그램 로그에 다음 메시지가 기록됩니다.

메시지 1
사용자 지정 인증서를 로드할 수 없습니다. 서버가 연결을 허용하지 않습니다. 인증서가 제대로 설치되어 있는지 확인해야 합니다. 온라인 설명서에서 "SSL에서 사용하도록 인증서 구성"을 참조하십시오.
자세한 정보는 http://go.microsoft.com/fwlink/events.asp에 있는 도움말 및 지원 센터를 참조하십시오.
메시지 2
오류 0x80092004, 상태 코드 0x80으로 인해 TDSSNIClient 초기화에 실패했습니다.
자세한 정보는 http://go.microsoft.com/fwlink/events.asp에 있는 도움말 및 지원 센터를 참조하십시오.
메시지 3
오류 0x80092004, 상태 코드 0x1로 인해 TDSSNIClient 초기화에 실패했습니다.
자세한 정보는 http://go.microsoft.com/fwlink/events.asp에 있는 도움말 및 지원 센터를 참조하십시오.
메시지 4
네트워크 라이브러리에 내부 오류가 있으므로 네트워크 라이브러리를 시작할 수 없습니다. 원인을 파악하려면 오류 로그에서 이 오류 바로 앞에 나오는 오류를 검토하십시오.
자세한 정보는 http://go.microsoft.com/fwlink/events.asp에 있는 도움말 및 지원 센터를 참조하십시오.

원인

이 문제는 업그레이드하기 전에 Certificate 레지스트리 항목에 저장되어 있는 값이 유효하지 않기 때문에 발생합니다.

업그레이드하기 전에 Certificate 레지스트리 항목이 0이 아닌 값으로 설정되어 있으면 SQL Server 2005는 이 값을 마이그레이션하여 사용합니다. 따라서 이 값이 유효하지 않으면 SQL Server 2005가 해당 인증서를 찾을 수 없기 때문에 SQL Server 2005가 시작되지 않습니다.

해결 방법

이 문제를 해결하려면 아래 방법 중 하나를 사용하십시오.
  • SQL Server 구성 관리자를 사용하여 유효한 인증서를 가져옵니다.
  • Certificate 레지스트리 항목을 지워 아무 값도 설정되어 있지 않도록 합니다. 그러면 SQL Server 2005가 자체 서명된 인증서를 사용합니다.

추가 정보

SQL Server 2000과 SQL Server 2005는 연결하는 동안 항상 로그온 패킷 암호화를 시도합니다. 따라서 SQL Server 2000과 SQL Server 2005는 데이터 암호화의 사용 여부에 관계없이 SSL(Secure Sockets Layer) 인증서를 로드하려고 시도합니다.

Certificate 레지스트리 항목이 유효하지 않은 값으로 설정되어 있으면 SQL Server 2000은 로컬 컴퓨터에서 인증서를 로드하지 않고 시작합니다. 따라서 SQL Server 2000은 로그온 패킷 암호화를 시도하지 않습니다. 유효하지 않은 값의 예로 0을 들 수 있습니다. Certificate 레지스트리 항목이 유효한 값으로 설정되어 있으면 SQL Server 2000은 인증서를 로드하고 로그온 패킷을 암호화하려고 시도합니다.

다음 레지스트리 하위 키는 SQL Server 2000의 Certificate 레지스트리 항목입니다.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\SuperSocketNetLib
값 이름: Certificate
종류: REG_SZ
SQL Server 2000과 달리 SQL Server 2005에서는 Certificate 레지스트리 항목의 값을 0으로 설정하여 암호화를 비활성화할 수 없습니다. SQL Server 2000을 SQL Server 2005로 업그레이드한 경우 SQL Server 2005는 Certificate 레지스트리 항목의 값이 0으로 설정되어 있으면 Certificate 레지스트리 항목을 지웁니다. 이 경우 SQL Server 2005는 인스턴스가 시작될 때 자체 서명된 인증서를 생성합니다.

다음 레지스트리 하위 키는 SQL Server 2005의 Certificate 레지스트리 항목입니다.
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Microsoft SQL Server\MSSQL.1\MSSQLServer\SuperSocketNetLib
값 이름: Certificate
종류: REG_SZ
잘못된 길이로 인해 Certificate 레지스트리 항목에 저장되어 있는 값이 유효하지 않으면 SQL Server 2005가 시작되지 않습니다. 응용 프로그램 로그에 다음 메시지가 기록됩니다.

메시지 1
오류 0xd, 상태 코드 0x38로 인해 TDSSNIClient 초기화에 실패했습니다.
자세한 정보는 http://go.microsoft.com/fwlink/events.asp에 있는 도움말 및 지원 센터를 참조하십시오.
메시지 2
오류 0xd, 상태 코드 0x1로 인해 TDSSNIClient 초기화에 실패했습니다.
자세한 정보는 http://go.microsoft.com/fwlink/events.asp에 있는 도움말 및 지원 센터를 참조하십시오.
메시지 3
네트워크 라이브러리에 내부 오류가 있으므로 네트워크 라이브러리를 시작할 수 없습니다. 원인을 파악하려면 오류 로그에서 이 오류 바로 앞에 나오는 오류를 검토하십시오.
자세한 정보는 http://go.microsoft.com/fwlink/events.asp에 있는 도움말 및 지원 센터를 참조하십시오.
Certificate 레지스트리 항목에 저장되어 있는 값이 유효한 경우 SQL Server 2005가 성공적으로 시작되고 응용 프로그램 로그에 다음 메시지가 기록됩니다.
암호화를 위해 인증서를 로드했습니다.




Microsoft 제품 관련 기술 전문가들과 온라인으로 정보를 교환하시려면 Microsoft 뉴스 그룹 (http://support.microsoft.com/newsgroups/default.aspx) 에 참여하시기 바랍니다.

본 문서의 정보는 다음의 제품에 적용됩니다.
  • Microsoft SQL Server 2005 Standard Edition Community Technology Preview
  • Microsoft SQL Server 2005 Enterprise Edition Community Technology Preview
  • Microsoft SQL Server 2005 Developer Edition Community Technology Preview
  • Microsoft SQL Server 2005 Express Edition Community Technology Preview
키워드: 
kbtshoot kbprb KB900497
공유
추가 지원 옵션
Microsoft Community 지원 포럼
직접 문의하기
Microsoft Certified Partner 찾기
Microsoft Store
소기업이 아닙니까?
다음에서 팔로우하십시오.