2.4 미러링 연결 - 파트너 연결
T-SQL의 파트너 연결은 반드시 미러서버에서 먼저 미러링을 연결(T-SQL 실행)한 후 주 서버를 연결해야 합니다.
미러서버에서 먼저 작업을 진행합니다.
미러서버의 새 쿼리에서 다음과 같이 쿼리를 작성한 후 실행합니다. 아래는 예시 쿼리입니다.
alter database test set partner = 'tcp://192.168.10.207:5022'
test는 데이터베이스 이름입니다.
'tcp://192.168.10.207:5022' 는 주서버 ip주소 및 주서버의 미러링 포트번호 입니다.
명령이 완료되었다는 메시지가 뜨면 성공입니다.
다음으로 주 서버에서 작업을 진행합니다.
명령어는 미러서버와 비슷하지만, ip및 포트 부분이 미러서버의 정보로 변경된 명령어입니다.
alter database test set partner = 'tcp://192.168.10.212 : 5022'
test는 데이터베이스 이름입니다.
'tcp://192.168.10.212 : 5022' 는 미러서버의 ip 주소 및 미러서버의 미러링 포트번호 입니다.
미러링이 성공하면 개체 탐색기를 통하여 아래와 같은 결과를 확인할 수 있습니다.
만약, 쿼리 수행 중 트랜잭션 에러가 발생하는 경우에는 다음 미러링 트랜잭션에러편 에서 해당 에러를 해소할 수 있습니다.
>> 트랜잭션 에러편
종종 나타나는 에러긴 한데, 저도 왜 이런 에러가 발생하는지는 아직 파악하지 못했습니다. 아시는분 댓글 부탁드립니다.
저는 어떤 때는 잘 미러링이 되었다가, 어떤 때는 트랜잭션 에러가 발생했습니다.
주 서버의 미러링 성공시 출력 화면입니다.
미러서버의 미러링 성공시 출력 화면입니다.
이제 미러링을 통해 미러서버에 데이터를 쌓은 후, 미러링 옵션을 이용하여 미러링 주체를 바꾸면 미러서버가 주 서버가 되고, 관련 데이터를 확인하시어 미러링테스트를 완료하면 완벽합니다!
이 포스팅을 작성한 이유는, SSMS 2016 버전의 미러링 버그가 있음을 사람들이 잘 인지하지 못하고 있고, 저 역시 버그인줄 몰랐던 터라 해외사이트를 뒤져가면서 삽질아닌 삽질을 계속 하게 되고 운이 좋아 어느 회사의 문서로 T-SQL이 있음을 알게되었고 이렇게 미러링을 완성할 수 있었습니다.
제가 찾아보았던 내용을 정리하여 다른분들께도 도움이 되었으면 하는 바램에 포스팅을 씁니다. 더이상 삽질하지마세요 ㅠ.ㅠ
'프로그래밍 > DB' 카테고리의 다른 글
MYSQL 컬럼 자동증가 (0) | 2018.12.11 |
---|---|
[MSSQL]SQL Server 2016 미러링 구축하기 트랜잭션에러편 (2) | 2018.08.29 |
[MSSQL]SQL Server 2016 미러링 구축하기 2편 (1) | 2018.08.24 |
[MSSQL]SQL Server 2016 미러링 구축하기 1편 (0) | 2018.08.01 |
ACCESS Log4Net App.Config 입력예시 (0) | 2018.04.20 |