2011-08-26 2 views
1

Windows Server 2008 R2를 실행하는 서버에서 SQL Server 2008 R2 Express에 원격으로 연결하려고합니다. 다음과 같은 오류가 나타납니다.SQL Server 2008에 대한 원격 연결을위한 연결 문자열

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: TCP Provider, error: 0 - A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.)

정확히 무엇인지 알아야 할 것이므로 문제가 연결 문자열과 관련이있을 수 있습니다. 나는 연결 문자열 형태를 취한다 이해 :

Data Source=123.123.123.123\InstanceName;Initial Catalog=MyDBName;user id=MyUserName;password=MyPassword; 

내 SQL Server 설치의 인스턴스 이름의 형식은 ComputerName\SQLEXPRESS 걸립니다. 이것은 서버의 Management Studio에 로그인 할 때 표시됩니다. 연결 문자열은

으로 시작해야합니다.
Data Source=123.123.123.123\ComputerName\SQLEXPRESS 

모든 슬래시 때문에 잘못되었습니다. 나는 또한

Data Source=123.123.123.123,1433\SQLEXPRESS 

을 시도 그래서 내가 1433에서 사용하는 TCP 포트는 것을 이해하기 때문에 포트를 지정 할 수있는 나는 또한 선가

Data Source=123.123.123.123\SQLEXPRESS 

: 나는 이렇게 컴퓨터 이름을 생략하는 것을 시도했다 SQL Server 및

Data Source=123.123.123.123,1434\SQLEXPRESS 

나는 1434가 SQL Server 브라우저에서 사용되는 UDP 포트라는 것을 알고 있기 때문에.

나는 또한 이들의 모든 조합을 시도했으며 모두 동일한 오류가 발생합니다.

이 내가 서버에서 원격 검색을 가능하게 촬영 한 단계는 다음과 같습니다

관리 Studio에서
  1. 오른쪽 속성, 보안으로 이동하여 SQL Server 및 Windows 인증 모드를 확인, 인스턴스를 클릭합니다. 연결 탭에서 "이 컴퓨터에 원격 연결 허용"을 선택했습니다.

  2. SQL Server 구성 관리자에서는 발생하는 모든 노드 아래에서 네 가지 연결 옵션 (공유 메모리, 명명 된 파이프, TCPIP 및 경유)을 모두 사용하도록 설정했습니다. SQL Express의 프로토콜에서 포트 1433을 지정하고 TCP 동적 포트를 0으로 설정하여 공백으로 남겨 두었습니다 (동적 포트를 사용하도록 설정 한 것 같습니다).

  3. sqlservr.exesqlbrowser.exe에 대해 TCP 포트 1433, UDP 포트 1434 및 프로그램 예외에 대한 방화벽 예외를 만들었습니다.

사람이 말해 수 있다면 나는 그것으로 문제가 해결되지 않은 경우에도 큰 도움이 될 것입니다 사용해야 연결 문자열의 데이터 소스 부분의 네 가지 버전 중 어느. 그것은 내가 시도한 모든 것이 이후에 네 번이 아니라 한번 테스트해야한다는 것을 의미합니다.

미리 도움을 청하십시오!

+0

이 파일을 사용해야합니다. 데이터 원본 = 123.123.123.123 \ SQLEXPRESS. 로컬로 연결하면 연결이 작동합니까? –

+0

코드, XML 또는 데이터 샘플을 게시하는 경우 텍스트 편집기에서 해당 행을 강조 표시하고 편집기 툴바에서 "코드 샘플"단추 ('{}) '를 클릭하여 멋지게 형식을 지정하고 구문을 강조 표시하십시오! 오류 메시지를 게시하는 경우 ** 오류 코드를 올바로 형식 화하려면 블록 쿼트 (' "')를 사용하십시오 ** –

답변

1

어디에서 방화벽 예외를 입력 했습니까? 컴퓨터, 서버 또는 둘 모두에서 어디에서 입력 했습니까?

두 번째 연결 문자열이 실제로 유효한 유일한 문자열입니다. 1433 번 포트에서 텔넷 할 수 있습니까?Management Studio의 인스턴스에 원격으로 연결할 수 있습니까? 문제는 연결 문자열이있는 코드에서만 발생합니다. 서버에서 동일한 코드를 실행 해 보셨습니까?

Network=DBMSSOCN; 

이 질문은 꽤 많이 와서 당신이 뭔가를 타격하고 확신 : 당신이 당신의 연결 문자열에 다음 매개 변수를 추가 TCP/IP (대 명명 된 파이프/공유 메모리 등)를 강제하려고 했 다른 사람들은 전에 타격을 입었다. 이 기사 "How to troubleshoot connecting to the SQL Server Database Engine"을 읽으셨습니까? this search result에 따르면이 오류 메시지와 Express를 언급하는 여기에 20 개 이상의 질문이 있습니다. 다른 사용자의 문제를 해결 한 답변의 항목에 대해 설정을 다시 확인하는 것이 좋습니다.

+0

제안 및 링크를 확인하고 연결 문자열을 명확히 해 주셔서 감사합니다. 로컬에서는 원격 연결도 실패했지만 Management Studio를 사용하면 문제가있는 곳을 알았습니다. 서버 방화벽에서 예외를 만들었지 만 서버는 ISP에서 호스팅하는 가상의 서버입니다. TCP 포트도 열어야합니다. 솔루션이 아니라면 다시 게시하고 제안 된 링크를 살펴본 후에도 찾을 수 없습니다. 다시 한 번 감사 드리며 다른 사람들에게도 감사드립니다. –

관련 문제