SQL Server의 연결 문제 해결

적용 대상: SQL Server
원래 KB 번호: 4009936

요약

SQL Server 연결 오류는 네트워크 구성, 인증, 이름 확인, 방화벽 규칙 및 TLS(전송 계층 보안) 설정을 비롯한 여러 가지 원인이 있을 수 있습니다. 이 문제 해결 개요는 연결 실패의 범주를 식별하고, 각 일반적인 오류에 대한 중요 문서에 대한 링크를 제공하고, SQL Server 연결 문제를 조사하는 데 Microsoft 지원 엔지니어가 사용하는 진단 도구를 나열하는 데 도움이 됩니다.

참고

사용자 환경의 여러 SQL Server 인스턴스가 영향을 받거나 문제가 간헐적인 경우 Windows 정책 또는 네트워크 문제는 일반적으로 SQL Server 구성 문제가 아닌 근본 원인입니다.

시작하기 전에

문제 해결을 시작하기 전에 연결 문제 해결을 위한 커밋된 필수 구성 요소 및 검사 목록 로그를 수집하고 SQL Server 작업할 때 일반적인 연결 오류를 방지하는 데 도움이 되는 빠른 작업 목록을 참조하세요.

SQL Server 연결 오류 범주

대부분의 연결 오류는 다음 범주 중 하나에 속합니다. 이 표를 사용하여 증상과 범주를 일치시키고 연결된 문서로 이동하여 자세한 단계를 수행합니다.

카테고리 일반적인 증상 시작 위치
네트워크 또는 인스턴스 연결 가능성 클라이언트가 서버 또는 명명된 인스턴스에 연결할 수 없습니다. 네트워크 관련 또는 인스턴스별 오류
인증 및 Kerberos 로그인이 실패하거나 클라이언트가 SSPI 컨텍스트를 생성할 수 없습니다. SSPI 컨텍스트를 생성할 수 없으며사용자에 대한 로그인이 실패했습니다.
시간 제한 및 연결 끊기 연결 시간이 너무 오래 걸리거나 예기치 않게 닫힙니다. 시간 제한이 만료되고기존 연결이 강제로 닫혔습니다.
암호화 및 인증서 인증서를 신뢰할 수 없거나 TLS 핸드셰이크가 실패합니다. 인증서 체인이 신뢰할 수 없는 인증 기관으로부터 발급되었습니다.
액세스 유효성 검사 토큰 기반 서버 액세스 유효성 검사에 실패합니다. 토큰 기반 서버 액세스 유효성 검사 실패

연결 문제를 해결하는 도구 및 방법

다음 섹션에서는 다양한 SQL Server 연결 오류를 진단하는 데 도움이 되는 도구 및 절차를 설명합니다.

SQL Server 작동하도록 Windows 방화벽 설정

클라이언트가 SQL Server 인스턴스에 연결할 수 있도록 Windows 방화벽을 설정하는 단계는 SQL Server와 함께 작동하도록 방화벽 구성을 참조하세요.

SQL Server에 대한 OLE DB 또는 ODBC 연결 테스트

  • 클라이언트 컴퓨터에서 SQL Server 인스턴스로의 연결을 빠르게 테스트하려면 UDL(유니버설 데이터 링크) 파일을 설정합니다. 자세한 내용은 UDL(유니버설 데이터 링크) 파일을 사용하여 SQL Server에 대한 연결 테스트를 참조 하세요.
  • ODBC 데이터 원본(64비트) 또는 ODBC 데이터 원본(32비트)을 사용하여 SQL Server ODBC 연결을 설정하고 테스트할 수도 있습니다. 자세한 내용은 ODBC 데이터 원본 관리자 DSN 옵션을 참조 하세요.

PortQryUI를 사용하여 포트가 차단되었는지 확인

그래픽 포트 스캐너인 PortQryUI 도구를 사용하여 필요한 SQL Server 포트가 차단되었는지 확인합니다. 자세한 내용은 SQL Server에서 PortQryUI 도구 사용을 참조 하세요.

SQL Server 수신 대기 중인 포트 찾기

SQL Server 인스턴스가 수신 대기 중인 TCP 포트를 식별하는 단계는 SQL Server가 동적 포트 또는 정적 포트에서 수신 대기 중인지 확인을 참조하세요.

SQLCheck를 사용하여 자세한 진단 보고서 가져오기

Microsoft 제품 지원 엔지니어는 종종 연결 실패의 원인을 진단하는 도구인 SQLCheck를 사용합니다. 연결된 지침에 따라 SQLCheck을 다운로드하고 심층 분석을 위한 보고서를 수집합니다.

Kerberos 구성 관리자 사용하여 SPN 문제 해결

SPN(서비스 사용자 이름) 문제를 식별하고 해결하려면 Kerberos 구성 관리자 사용합니다. 자세한 내용은 Kerberos 구성 관리자를 사용하여 SPN 문제를 해결하세요.

SQLTrace 및 SQLNAUI를 사용하여 네트워크 추적 수집 및 분석

대부분의 경우 네트워크 추적은 네트워크 오류를 조사하는 가장 효과적인 방법입니다. 클라이언트 및 서버에서 네트워크 추적 수집의 단계를 수행한 다음 SQLNAUI(SQL Network Analyzer UI)를 사용하여 추적을 분석합니다.

자주 묻는 질문

정확한 오류를 모르는 경우 어떤 문서로 시작해야 하나요?

기준 로그를 수집하기 위한 연결 문제 해결을 위한 권장 필수 구성 요소 및 검사 목록 으로 시작합니다. 그런 다음 SQL Server 연결 오류의 범주 표를 사용하여 증상과 포커스가 있는 문서를 일치시킬 수 있습니다.

이 문제는 가끔만 발생합니다. 무엇을 수집해야 하나요?

일시적인 문제의 경우 클라이언트와 서버 모두에서 동시에 네트워크 추적을 수집합니다. 클라이언트 및 서버에서 네트워크 추적 수집을 참조하세요.

문제가 이름 확인, 인증 또는 네트워크인지 어떻게 알 수 있나요?

오류 텍스트와 오류 텍스트가 발생하는 단계를 확인합니다. 이름 확인 오류는 일반적으로 서버를 찾을 수 없거나 연결할 수 없음을 언급합니다. 서버 이름에 대해 pingnslookup을 사용하여 이를 확인할 수 있습니다. 네트워크 또는 포트 문제는 연결 거부 또는 시간 제한 오류로 표시됩니다. PortQryUI를 사용하여 이러한 문제를 격리할 수 있습니다. 인증 문제는 로그인 실패 또는 SSPI 오류로 TCP 연결이 성공한 후에 나타납니다. SSPI 컨텍스트를 생성할 수 없으며사용자에 대한 로그인이 실패했음을 참조하세요.

TCP 연결 실패와 TLS 핸드셰이크 오류의 차이점은 무엇인가요?

SQL Server 트래픽이 교환되기 전에 TCP 연결 오류가 발생합니다. 클라이언트는 일반적으로 방화벽, 잘못된 포트 또는 중지된 서비스로 인해 서버 포트에 대한 소켓을 열 수 없습니다. TLS 핸드셰이크 오류는 TCP 연결이 설정된 후 클라이언트와 서버가 프로토콜 버전, 암호 또는 인증서에 동의할 수 없는 경우에 발생합니다. TLS 문제의 경우 신뢰할 수 없는 기관에서 인증서 체인을 발급 했으며 기존 연결이 원격 호스트에 의해 강제로 닫혔음을 참조하세요.

Microsoft 지원 문의하기 전에 어떤 로그를 수집해야 하나요?

SQL Server 오류 로그, 클라이언트와 서버 양쪽의 Windows 시스템 및 애플리케이션 이벤트 로그, 서버의 SQLCheck 보고서, 그리고 문제를 재현하는 동안 클라이언트와 서버에서 동시에 수집한 네트워크 추적을 수집합니다. 전체 목록은 연결 문제를 해결하고 클라이언트 및 서버에서 네트워크 추적을 수집하기 위한 권장 필수 구성 요소 및 검사 목록을 참조하세요.

더 많은 커뮤니티 지침은 어디에서 찾을 수 있나요?

Microsoft 지원에서 유지 관리하는 도구 설명서 및 문제 해결 참고 사항에 대해서는 CSS SQL 네트워킹 도구 wiki를 참조하세요.