Multisubnet환경의 AG 그룹에서 링크드 서버 사용시 주의점

 

·         Version : SQL Server 2012, 2014, 2016

 

SQL Server 2012부터 도입된 가용성 그룹(AG) SQL Server에서 제공할  있는 최고의 가용성을 보장하지만 구성이 까다로울  있다특히 다중 서브넷 환경에서 장애 조치를 구성하는 경우 예상치 못한 문제를 많이 겪을  있다필자 또한 단일 서브넷에서의 AG 경험은 있었지만 다중 서브넷 환경에서 구성  운영은 처음이어서 (Cloud  VM으로  다중 서브넷(Multi Region구성)  다양한 이슈를 겪고 있다.(기술적 이슈는 아님)

 

이번 이슈는 Multisubnet  AG구성을  구성한 환경에서 링크드 서버를 구성할때, Native Client 사용하였을 경우 Node 1에서 Node2 Failover되었을때 Node2번으로 접속하지 못하는 경우가 발생하였다.   문제를 해결하기 위해서는 ODBC 사용해서 링크드 서버를 구성해야 한다아래 구성받법을 참고해서 링크드 서버를 구성   있도록 한다.

 

ODBC 드라이버를 다운로드 받아 설치 한다이때 11버전 이상을 선택 한다. (SQL 2016 경우ODBC 드라이버 버전이 13이다.)

·         Microsoft® ODBC Driver 13 for SQL Server® - Windows + Linux

https://www.microsoft.com/en-us/download/details.aspx?id=50420

 

AG에서 사용할 ODBC 연결을 생성한다. System DSN 탭에서 연결을 생성한다.

 

 

Datasource ODBC Dirver 13 for SQL Server 선택한다.

 

ODBC에서 사용할 이름을 지정하고 Server 경우 AG 리스너 이름을 입력한다.

 

 

 

기술적으로는 로그인 비밀번호를 넣지 않아도 되지만 링크 서버에 사용할 로그인과 비밀번호를 사용하여 테스트   있다물론 계정  비밀번호는 저장되지 않는다.

 

 

마지막 단계에서Multisubnet failver 옵션을  체크한다 기능이 Failover 되었을때 다른 노드로 연결을 시도한다.

 

ODBC 생성이 완료되었으면 SSMS에서 링크드를 구성한다공급자는 ODBC 드라이버를 선택한다그리고 Datasource부분에 ODBC에서 생성했던 ODBC 이름을 사용하여 링크드 서버를 구성한다.

 



[참고자료]

https://royalsql.com/2016/09/29/mayday-this-is-an-emergency-my-linked-server-is-using-odbc-to-connect-to-an-ag/

 

 

2017-08-15 / 강성욱 / http://sqlmvp.kr

 

SQL Server 2016, MS SQL , SQL Server Always On, AG 구성멀티서브넷 이중화, Linked Server, 링크드 서버, ODBC 링크드 구성



강성욱 / jevida@naver.com
Microsoft SQL Server MVP
Blog : http://sqlmvp.kr
Facebook : http://facebook.com/sqlmvp
No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 38534
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 20771
2114 SSMS – AlwaysOn Group Latency report jevida(강성욱) 2018.03.31 3488
2113 SQL Server 백업 압축의 압축률 확인 jevida(강성욱) 2018.03.31 4266
2112 SQL Server 교착 상태 모니터링 (-T1222) jevida(강성욱) 2018.03.31 4343
2111 SQL Operations Studio - Linux, MAC에서 사용할 수 있는 SQL DBMS 툴 jevida(강성욱) 2018.03.31 3185
2110 SQL Server 2016 Large RAM 및 Checkpoint jevida(강성욱) 2018.03.31 2345
2109 SQL Server 2016 JSON 형식을 일반 ROW 형식으로 반환하 jevida(강성욱) 2018.03.31 1904
2108 model Database 손상시 발생하는 영향 및 복구 방법 jevida(강성욱) 2018.03.31 1272
2107 In-Memory OLTP 사용시 메모리 할당량 초과 오류 jevida(강성욱) 2017.09.13 6891
2106 SQL Server 2016 쿼리 실행에 대한 각 스레드(오퍼레이터) 성능 통계 jevida(강성욱) 2017.09.13 7167
» Multisubnet환경의 AG 그룹에서 링크드 서버 사용시 주의점 jevida(강성욱) 2017.09.13 6025
2104 SQL Linux에서 Job Agent 설치 jevida(강성욱) 2017.09.13 6051
2103 SQL Linux에서 Windows SQL 백업 파일 복원 jevida(강성욱) 2017.09.13 6067
2102 Linux에서 Network I/O 확인 jevida(강성욱) 2017.09.13 6637
2101 SQL Linux에서traceflag 활성화 jevida(강성욱) 2017.09.13 5705
2100 SQL Linux에서 dump file 위치 변경 jevida(강성욱) 2017.09.13 5495
2099 SQL Linux에서 Port 변경 jevida(강성욱) 2017.09.13 6427
2098 Linux에서 DISK 공간 확인 jevida(강성욱) 2017.09.13 5664
2097 SQL Linux에서collation 변경 jevida(강성욱) 2017.09.13 3632
2096 SQL Linux에서 데이터 및 로그 파일의 기본 디렉토리 변경 jevida(강성욱) 2017.09.13 3950
2095 SQL Linux 기본Configure 명령 jevida(강성욱) 2017.09.13 3485





XE Login