SQL Server 복제를 사용하면 데이터베이스 관리자가 조직 전체의 여러 서버에 데이터를 분산시킬 수 있습니다. 다음과 같은 여러 가지 이유로 조직에 복제를 구현할 수 있습니다.
- 로드 균형 조정 . 복제를 사용하면 데이터를 여러 서버에 보급 한 다음 해당 서버간에 쿼리로드를 분산시킬 수 있습니다.
- 오프라인 처리 . 복제는 항상 네트워크에 연결되어 있지 않은 시스템에서 데이터베이스의 데이터 조작을 지원합니다.
- 중복 . 복제를 사용하면 순간에 처리로드를 가져올 준비가 된 장애 조치 (failover) 데이터베이스 서버를 구축 할 수 있습니다.
모든 복제 시나리오에는 두 가지 주요 구성 요소가 있습니다.
- 게시자 는 다른 서버에 제공 할 데이터가 있습니다. 주어진 복제 체계에는 하나 이상의 게시자가있을 수 있습니다.
- 구독자 는 데이터가 수정 될 때 게시자로부터 업데이트를 받기를 원하는 데이터베이스 서버입니다.
단일 시스템이이 두 가지 기능 모두에서 작동하지 못하게하는 것은 없습니다. 사실, 이것은 대개 대규모 분산 데이터베이스 시스템 의 설계입니다.
복제를위한 SQL Server 지원
Microsoft SQL Server는 세 가지 유형의 데이터베이스 복제를 지원합니다. 이 기사에서는 각 모델에 대한 간략한 소개를 제공하지만 향후 기사에서는 자세하게 살펴볼 것입니다. 그들은:
- 스냅 숏 복제 는 이름에서 알 수있는 방식으로 작동합니다. 게시자는 복제 된 전체 데이터베이스의 스냅 샷을 가져 와서 구독자와 공유합니다. 물론 이것은 매우 시간과 자원을 많이 소비하는 과정입니다. 이러한 이유로 대부분의 관리자는 자주 변경되는 데이터베이스에 대해 반복적으로 스냅 샷 복제 를 사용하지 않습니다. 스냅 샷 복제가 일반적으로 사용되는 두 가지 시나리오가 있습니다. 첫째, 거의 변경되지 않는 데이터베이스에 사용됩니다. 둘째, 향후 업데이트가 트랜잭션 또는 병합 복제를 사용하여 전파되는 동안 시스템간에 복제를 설정하기위한 기준을 설정하는 데 사용됩니다.
- 트랜잭션 복제 는 정기적으로 변경되는 데이터베이스에 대해보다 유연한 솔루션을 제공합니다. 트랜잭션 복제를 사용하면 복제 에이전트는 게시자에게 데이터베이스의 변경 사항을 모니터링하고 이러한 변경 사항을 구독자에게 전송합니다. 이 전송은 즉시 또는 주기적으로 발생할 수 있습니다.
- 병합 복제를 사용하면 게시자와 구독자가 데이터베이스를 독립적으로 변경할 수 있습니다. 두 엔티티 모두 활성 네트워크 연결없이 작업 할 수 있습니다. 다시 연결되면 병합 복제 에이전트는 두 데이터 집합의 변경 사항을 확인하고 그에 따라 각 데이터베이스를 수정합니다. 변경 사항이 충돌하면 에이전트는 사전 정의 된 충돌 해결 알고리즘을 사용하여 적절한 데이터를 결정합니다. 병합 복제는 일반적으로 랩톱 사용자 및 게시자와 계속 연결할 수없는 사용자가 사용합니다.
이러한 각 복제 기술은 유용한 용도로 사용되며 특정 데이터베이스 시나리오에 적합합니다.
SQL Server 2016을 사용하는 경우 복제 필요에 따라 버전을 선택하십시오. 복제 지원과 관련하여 각 에디션마다 다른 기능이 있습니다.
- 가입자 지원 전용 : 익스프레스, 도구 또는 고급 서비스가 포함 된 익스프레스 및 웹 에디션은 제한된 복제 기능을 제공하며 복제 클라이언트로만 작동 할 수 있습니다.
- 전체 게시자 및 구독자 지원 : Standard 및 Enterprise 는 Oracle 게시, 피어 투 피어 트랜잭션 복제 및 업데이트 가능한 구독으로의 트랜잭션 복제를 포함하여 엔터프라이즈와의 완벽한 지원을 제공합니다.
SQL Server의 복제 기능은 데이터베이스 관리자 가 엔터프라이즈 환경에서 데이터베이스를 관리하고 확장 할 수있는 강력한 도구를 제공합니다.