2006/09/19

고가용 SQL Server 데이터베이스 미러링

고가용 SQL Server 데이터베이스 미러링은, SQL Server 2005 에서 새롭게 지원하는 기능입니다.

데이터베이스 미러링은, 마이크로소프트에서 홍보를 하기는 하지만 정식적인 기술지원은 하지 않는다고 합니다.

필요하면 장애를 감수하고서라도 설정을 해도 된다는 내용입니다만, 필자가 운영하는 Windows Server 2003 Enterprise x64 에 SQL Server 2005 Enterprise x64 버젼으로 구성된 2대의 서버에서 10여개 이상의 데이터베이스를 미러링 구성해서 6개월 이상 운영해 본바 특별한 문제점은 없는 것으로 보입니다.


1. 고가용 솔루션

데이터베이스 미러링은 데이터베이스의 가용성을 높여 주는 주요 소프트웨어 솔루션입니다.

주(Principal) 역할을 주 서버라고 하며, 미러(Mirror) 역할을 미러 서버라고 합니다.

미러링은 데이터베이스 복사본을 2개 동기화 유지하여 응용프로그램의 끊김없는 DB 연결 및 데이터 손실을 최소화 합니다. 


2. 미러링 구성

구성에는 총 3개의 SQL Server 인스턴스가 필요합니다.(가용성우선모드)

주(Principal)역할 서버 와 미러(Mirror)역할 서버, 그리고 이를 모니터(Withness)하는 서버가 필요합니다.

모니터 서버는 주 서버와 미러 서버를 모니터링하여 지정한 시간에 장애 조치 파트너 중 하나만 주 서버로 작동하게 하는 방식으로 자동 장애 조치를 지원합니다.



지정한 서버는 파트너 또는 미러링 모니터 서버로서 여러 개의 동시 DB 미러링 세션에 설정할 수 있습니다.

모든 세션(및 해당 데이터베이스)은 다른 세션에 대해 독립적으로 구성 및 운영됩니다.

데이터베이스 서버는 주로 응용프로그램 서버(웹서버)등과 연동하여 운영하게 됩니다.

모니터(Withness) 역할 서버는 응용프로그램 서버에 설치를 하면 되므로 별도의 모니터를 위한 하드웨어는 필요가 없습니다.


3. 장애조치



데이터베이스 미러링 세션에서는 역할 전환 프로세스를 통해 주 역할과 미러 역할을 서로 바꿀 수 있습니다.



역할 전환 시 미러서버는 주 서버에 대한 장애 조치(Failover) 파트너 역할을 합니다.

미러서버는 주 역할을 넘겨 받아 DB 복사본을 새로운 주 데이터베이스로 사용하도록 온라인 상태로 만듭니다.

서버 한 대가 손실되어도 데이터베이스는 여전히 작동되므로 고가용성이 지원됩니다.

이전 주 서버는 가능(복구)할 경우 미러 서버 역할을 맡으며 새 미러 데이터베이스가 됩니다.( 역할 상호 전환)





4. 미러링의 장점


데이터베이스 미러링은 완전하거나 거의 완전한 데이터 중복성을 제공합니다.

서버 인스턴스는 직접 네트워크 연결을 통해 통신하며 특별한 하드웨어는 필요하지 않습니다.

세션의 운영 모드에 따라 특정 형태의 역할 전환 지원

가용성에 영향을 주지 않고 하드웨어 또는 소프트웨어 업그레이드를 위해 수동 장애 조치를 사용할 수 있습니다.

데이터베이스 미러링은 전체 텍스트 카탈로그를 지원합니다.

미러 데이터베이스에 대한 데이터베이스 스냅숏을 만들어 클라이언트가 제한 접속 가능

단일 데이터베이스를 미러링 세션의 주 데이터베이스이자 로그전달 구성의 주데이터베이스로 구성할 수 있습니다.

데이터베이스 미러링은 복제(Replication)와 호환

데이터베이스 미러링은 MSCS클러스터와 호환



보다 상세한 기술 및 구현 방법에 대한 것은 다음 문서를 참고하시면 좋습니다.

SQL Server 2005의 데이터베이스 미러링 :

http://www.microsoft.com/korea/technet/prodtechnol/sql/2005/dbmirror.mspx

Database Mirroring Best Practices and Performance Considerations :

http://www.microsoft.com/technet/prodtechnol/sql/2005/technologies/
dbm_best_pract.mspx



Implementing Application Failover with Database Mirroring :

http://www.microsoft.com/technet/prodtechnol/sql/bestpractice/
implappfailover.mspx




18-mysql4.gif
18-mysql5.gif
18-mirror_21_989.png
18-mirror_10_166.png

댓글 없음:

댓글 쓰기

가장 많이 본 글