SQL Server 2017향상된 복제 기능 – 배포 데이터베이스의 AG 지원

 

·      Version : SQL Server 2017 CU6

 

SQL Server 2017 CU6부터 SQL Server 복제 기능 향상으로 배포 데이터베이스가 가용성 그룹(AG) 포함이 가능하게 되었다 개선 사항은 향후 SQL Server 2016  2014에도 적용될 예정이다.

SQL Server 가용성 그룹(AG) 사용하여 SQL Server 인스턴스간에 데이터베이스 그룹에 대한 실시간 데이터 복제 기능을 제공한다가용성 그룹은 복제할 모든 데이터베이스가 하나의 가용성 단위로 포함되어 동작한다. AG 페일오버가 발생해도 SQL Server 복제가 정상적으로 작동한다복제 게시  구독 데이터베이스는 가용성 그룹을 사용하도록 구성할  있지만 복제 배포 데이터베이스는 AG 포함할  없었다이번 업데이트를 통해서 AG 포함할  있게 되었다.

 

지원 기능

·       배포 데이터베이스가 AG 포함되도록 구성

·       AG 장애 조치 전후의 게시  구독과 같은 복제 구성

·       장애 조치 전과 후에 복제 작업이 작동

·       배포 데이터베이스가 AG 있는 경우 배포자  게시자에서 복제 제거

·       기존 배포 데이터베이스 AG 노드 추가 또는 제거

·       배포자는 여러 배포 데이터베이스를 가질수 있으며  배포 데이터베이스는 자체 AG 있을  있으며 여러 배포 데이터베이스는 동일한 AG 속할  있음

 

제약 사항

·       로컬 배포 지원되지 않음예를 들어 게시자와 배포자는 서로 다른 SQL Server 인스턴스여야 한다배포자로 자체 사용하는 게시자는 AG 배포 데이터베이스를 지원할  없음

·       병합복제 지원 안됨

·       즉시 또는 대기중인 업데이트 구독자가 있는 트랜잭션 복제는 지원되지 않음

·       피어  피어 복제는 지원 안됨

·       양방향 트랜잭션 복제는 지원 안됨

·       배포 데이터베이스 복제본을 호스팅하는 모든 SQL Server 인스턴스는 동일한 버전의 SQL Server (SQL Server 2017 CU6 이상사용 해야함

·       배포 데이터베이스 AG에는 수신기가 구성되어 있어야 

·       배포 데이터베이스 AG 보조 복제본은 동기식 또는 비동기식일  있는데 동기모드가 권장됨비동기 모드는 데이터 손실  동기화 문제가 발생할  있음

·       배포 데이터베이스 AG 모든 복제본은 읽을  있어야 이는 2 복제본에서 실행해야하는  가지 구성단계 때문이다.

·       배포 데이터베이스 AG 모든 노드는 SQL Server 에이전트를 실행하는데 동일한 도메인 계정을 사용해야 하며 도메인 계정은  노드에 대해 동일한 권한을 가져야 

·       복제 에이전트가 프록시 계정에서 실행되는 경우 프록시 계정은 배포 데이터베이스 AG 모든 노드에 존재해야하며  노드에서 동일한 권한이 필요함

·       배포자를 변경하거나 배포 데이터베이스 속성을 변경해야하는 경우 배포 데이터베이스 AG 참여하는 모든 복제본에서  작업을 수행해야함

·       게시자에서 배포자를 구성하려면 복제 마법사를 사용할  없으며 스크립트를 사용해야함

·       배포 데이터베이스용 AG구성은 스크립트를 통해서만 수행할  있음

·       AG 배포 데이터베이스를 설정하는 것은 새로운 복제 구성이어야 기존 배포 데이터베이스를 AG 전환하는것은 지원되지 않음또한 배포 데이터베이스를 AG에서 가져오면  이상 유요한 배포 데이터베이스로 작동   없으므로 삭제해야한다.

 

복제 기능 향상으로 가능  시나리오

·       복제 배포 데이터베이스의 고가용성 – 배포 데이터베이스는 복제 토폴로지의 핵심으로 배포 데이터베이스가 손실되면 전체 토폴로지가 변경사항 수신을 중지한다배포 서버는 SQL Server FCI 인스턴스로 보호할  있지만 로컬HA 제공하는 사이트 DR 제공하지 않는다사이트 DR 달성하기 위해 현재 권장되는 솔루션은 지리적으로 분산된 장애조치 클러스터 인스턴스를 사용하여 저장소 수준의 복제를 사용하는 것이다. (SAN기반 복제 또는 Windows 2016 S2D 소프트웨어 기반의 SAN 복제)

·       업그레이드/마이그레이션 중단 최소화 – SQL Server 복제는 서버 이름에 크게 의존하기 때문에 복제 배포 데이터베이스를 호스팅하는 SQL Server 인스턴스를 업그레이드/마이그레이션 하려면 전체 복제 토폴로지를 다시 배포하거나 다시 설정해야 한다이는 상당한 가동 중지 시간을 필요하다이번 기능 향상으로 복제 토폴로지에서 SQL Server 업그레이드하기 위한 가동 중지 시간과 복잡성을 최소화   있다.

·       기업 전체에 걸쳐 단일 HADR 솔루션 표준화 – Tier 1고객의 대다수는 SQL Server FCI 유일한 옵션인 복제 배포 데이터베이스를 제외하고 HADR 요구사항에 맞는 솔루션으로 SQL Server 가용성 그룹을 표준화 하고 있다새로운 기능 향상으로 배포 데이터베이스를 AG 포함하여 표준화가 가능하다.

 

[참고자료]

https://blogs.msdn.microsoft.com/sql_server_team/replication-enhancement-distribution-database-in-availability-group/

 

 

 

2018-06-07 / 강성욱 / http://sqlmvp.kr / http://sqlangeles.com

 

SQL Server, MS SQL, SQL replication, Replication Enhancement, SQL 복제배포 데이터베이스, SQL Server AG, Availability Group, HA



출처: https://sqlmvp.tistory.com/1249?category=618825 [Database Lab]
No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 38132
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 20674
2134 Azure SQL에서 네트워크를 구성하는 방법 jevida(강성욱) 2019.03.25 305
2133 SQL Server 네이티브 컴파일된 저장 프로시저 성능 모니터링 jevida(강성욱) 2019.03.25 589
2132 SQL Server 2017 소규모 시스템에서 향상된 리소스 사용 jevida(강성욱) 2019.03.25 339
2131 클러스터 컬럼스토어 인덱스(Clusterd Columnstore Index)에서 대량 인서트 작업시 발생하는 래치 경합 최소화 트릭 jevida(강성욱) 2019.03.25 473
2130 클러스터 컬럼스토어 인덱스(Clusterd Columnstore Index)에서 대량 인서트 작업시 발생하는 래치 경합 최소화 트릭 jevida(강성욱) 2019.03.25 471
2129 SQL Server 2016 향상된 복제 기능 – 배포 데이터베이스 클린업 향상 jevida(강성욱) 2019.03.25 376
» SQL Server 2017향상된 복제 기능 – 배포 데이터베이스의 AG 지원 jevida(강성욱) 2019.03.25 522
2127 SQL Server 2017 향상된 복제 기능 - 복제에이전트 프로필 매개변수의 동적 새로 고침 jevida(강성욱) 2019.03.25 557
2126 SQL Server update on Docker jevida(강성욱) 2019.03.25 459
2125 SQL Server 2017에서 향상된 UDF 실행 계획 jevida(강성욱) 2019.03.25 427
2124 ETL data error with MariaDB ODBC 3.0 (from Aurora to MS SQL) jevida(강성욱) 2019.03.25 615
2123 Run the SQL Server 2017 with Docker jevida(강성욱) 2019.03.25 526
2122 SQL Server Configuration Manager 실행 오류 (WMI 공급자 연결 오류) jevida(강성욱) 2019.03.25 647
2121 BULK INSERT 동시에 여러개 실행 향지 2019.01.30 1092
2120 대용량 데이터 조인에 대한 고민 ( Hash Join VS Nested Loop Join ) 향지 2018.04.04 4544
2119 How to check if Azure SQL is using In-Memory jevida(강성욱) 2018.03.31 3322
2118 MSSQL-CLI를 활용한 크로스플랫폼에서 SQL Server 관리하기 jevida(강성욱) 2018.03.31 3734
2117 SSMS – Search for execution plan jevida(강성욱) 2018.03.31 3819
2116 SQL Server Parallelism and Wait change (CXAPCKET, CXCONSUMER) jevida(강성욱) 2018.03.31 4108
2115 SQL Server Statistics Update row sampling rate and histogram step jevida(강성욱) 2018.03.31 3751





XE Login