http://support.microsoft.com/default.aspx?scid=kb%3Bko%3B313178

PRB: JDBC 드라이버를 사용하여 소켓을 설정하면 오류가 발생한다
이 문서가 적용되는 제품 보기.
기술 자료 ID : 313178
마지막 검토 : 2004년 3월 4일 목요일
수정 : 1.0
이 문서는 이전에 다음 ID로 출판되었음: KR313178
현상
JDBC용 Microsoft SQL Server 2000 드라이버를 사용하여 SQL Server 2000에 연결하려고 하면 다음과 같은 오류 메시지가 나타날 수 있습니다.
java.sql.SQLException: [Microsoft][SQLServer 2000 Driver for JDBC]Error establishing socket.
추가 정보
다음은 이러한 오류가 발생할 수 있는 가장 흔한 몇 가지 경우와 이러한 경우가 해당 연결에 적용되는지 여부를 확인하는 방법입니다.

서버 이름이나 IP 주소가 잘못되었습니다.

서버의 기본 연결을 테스트하려면 명령 프롬프트에서 ping 명령을 사용하십시오. 이 명령은 해당 서버가 네트워크에 연결되어 있는지 확인하지만 SQL Server가 그 연결을 받아들일 수 있는지 여부는 확인하지 않습니다.
서버 이름은 올바르지만 서버가 실행되고 있지 않습니다.

서버의 SQL Server 네트워크 유틸리티나 SQL 쿼리 분석기 같은 다른 클라이언트 유틸리티 또는 osql 같은 명령줄 유틸리티에서 서버가 실행 중인지 여부를 확인할 수 있습니다.

이들 도구에 대한 자세한 내용은 SQL Server 온라인 설명서를 참조하십시오.
서버 이름이 올바르고 서버가 실행 중이지만 서버에 사용할 수 있는 TCP/IP가 없습니다.

서버에 대해 사용할 수 있는 프로토콜이 있는지 확인하려면 다음과 같이 하십시오. 1. SQL Server 2000에서 SQL Server 네트워크 유틸리티(svrnetcn.exe)를 시작합니다.
2. 일반 탭에서 설치된 서버 네트워크 라이브러리를 로드할 Microsoft SQL Server의 인스턴스를 선택합니다.
3. 사용할 수 있는 프로토콜 목록에 TCP/IP가 있는지 확인합니다.
서버 이름이 올바르고 서버가 실행 중이며 TCP/IP를 사용할 수 있지만 JDBC 연결 URL에서 잘못된 포트 번호를 지정하였습니다.

참고: 드라이버는 명명된 인스턴스에 연결할 때 이름을 사용하지 않습니다. 명명된 인스턴스에 연결하려면 포트 번호를 사용해야 합니다. SQL Server 인스턴스 포트 번호를 찾으려면 다음과 같이 하십시오. 1. 서버에 설치된 프로토콜을 보는 방법에 대해서는 이전 절차를 따릅니다.
2. 사용할 수 있는 프로토콜 목록에서 TCP/IP를 누른 다음 속성을 누릅니다. 속성 대화 상자에 포트 번호가 표시됩니다.
명명된 SQL Server 인스턴스에 연결하는 방법에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
313225 (http://support.microsoft.com/kb/313225/KO/) HOWTO: JDBC를 사용하여 명명된 SQL Server 2000 인스턴스에 연결
문제가 일시적이라면 네트워크 문제나 서버 문제(예를 들어 때때로 서버가 사용량이 많아 연결을 받아들이지 못하는 경우) 때문일 수 있습니다. 문제가 발생하면 SQL 쿼리 분석기 같은 다른 클라이언트와 동일한 서버 인스턴스에 연결할 수 있는지 확인하십시오. 네트워크 문제가 있는지 확인하기 위해 네트워크 모니터(NetMon) 같은 Network Sniffer를 사용하여 클라이언트와 서버 사이의 소통량을 모니터링하는 것도 유용할 수 있습니다.

NetMon을 사용하는 방법에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
148942 (http://support.microsoft.com/kb/148942/EN-US/) How to Capture Network Traffic with Network Monitor
문제가 일시적이 아니라면 네트워크 구성 문제일 수 있습니다. 예를 들어 사용자가 특정 포트를 차단하는 방화벽 뒤에 있을 수 있습니다.

SQL Server가 방화벽 뒤에서 작동하도록 구성하는 방법에 대한 자세한 내용은 Microsoft 기술 자료의 다음 문서를 참조하십시오.
287932 (http://support.microsoft.com/kb/287932/KO/) INF: 방화벽을 통해 SQL Server와 통신하는 데 필요한 TCP 포트
Posted by gala
l