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이 있음을 알게되었고 이렇게 미러링을 완성할 수 있었습니다.


제가 찾아보았던 내용을 정리하여 다른분들께도 도움이 되었으면 하는 바램에 포스팅을 씁니다. 더이상 삽질하지마세요 ㅠ.ㅠ

+ Recent posts