2012-11-30 3 views
0

아마존 RDS에서 SQL Server 2008 인스턴스가 실행되고 Amazon EC2 인스턴스에서 SQL 2008 Express로 실행되는 다른 테스트 데이터베이스 서버가 있습니다.SqlConnection을 사용하여 SQL Server에 연결할 수 없습니다 (단, OleDbConnection에서는 OK)

SQL Server Management Studio (및 Navicat와 같은 다른 도구)를 사용하여이 두 서버에 연결할 수 있으므로 원격 TCP 연결을 허용하도록 서버가 올바르게 구성되어 있고 방화벽 문제가없는 것이 기쁩니다.

그러나 C# 응용 프로그램에서 SqlConnection을 사용하여 연결을 시도하면 제한 시간이 초과되어 실패합니다. 그러나 동일한 실험을 OleDbConnection을 사용하여 시도하면 (공급자 정보를 포함하도록 연결 문자열을 조정 한 후에) 제대로 작동합니다. 나는 (local) 연결을 설정하는 연결 문자열을 가진 SqlConnection를 사용하여 EC2 인스턴스에 실험을 실행하면 비교를 위해

, 그것은 또한 제대로 작동, 그래서 문제가 원격으로 SqlConnection의 사용과 관련되어 가정합니다.

SqlConnection을 얻으려면 무엇을해야하는지 또는 문제의 원인을 더 진단하려면 어떤 단계를 취해야합니까? 당신의 조언을

많은 감사,

답변

0

분명히이 문제가 this issue에 의해 발생 내 PCTools 방화벽에 의해 생성 된 아웃 바운드 TCP 패킷과 예상치 못한 일을했기 때문에, 내 경우에는, 그것은 특별히했다 SqlConnection.

PCTools를 제거하여 임시 해결 방법을 구현 했으므로 (방화벽을 비활성화하는 것만으로는 충분하지 않음) Windows/SQL 클라이언트가 기대하는 방화벽을 찾아야합니다.