2008년 9월 23일 화요일

ADO.NET, SQL 2005 미러링 Failover Partner SqlConnection

닷넷 2.0 프레임워크 기반에서는, 미러링된 데이터베이스의 장애조치에 의해서 보조 서버로 연결이 전환되는 기능을 지원하는 SQL Native Client 프로바이더 기능을 System.Data.SqlClient 네임스페이스에서 알아서 해줍니다.

SqlConnection Con = new SqlConnection("server=db1;Failover Partner=db2;database=wssplex.net;user id=wssplex;password=xxxxx");
SqlCommand Cmd = new SqlCommand();
Cmd.Connection = Con;

그런데,. 종종 아래와 같이 역할 전환이 된 상태에서 보조서버로의 연결이 잘안되는 경우가 있습니다. 최근의 닷넷 프레임워크 업데이트라면 패치가 된 상태이지만,. 버그 입니다.

처리되지 않은 예외: System.Data.SqlClient.SqlException: 로그인에서 요청한 데이터베이스 "wssplex.net"을(를) 열
수 없습니다. 로그인이 실패했습니다.
사용자 'wssplex'이(가) 로그인하지 못했습니다.
  위치: System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)
  위치: System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj) ............................

http://support.microsoft.com/kb/912151

윈도우 업데이트를 통해서 닷넷 프레임워크 관련 모든 업데이트를 완료하였다면 위와 같은 문제는 발생하지 않습니다...  이미 버그픽스가 완료된 상태라....^^


댓글 없음:

댓글 쓰기

HttpClient 에서 비동기 호출시 System.Threading.Tasks.Task 오류

client.PostAsync().Result; 하나 이상의 오류가 발생했습니다., 위치: System.Threading.Tasks.Task`1.GetResultCore(Boolean waitCompletionNotification) 이 요청을...