Azure SQL에서 읽기 전용 복제본에 대한 접속  링크 서버 생성

 

·         Version : Azure SQL

 

Azure SQL Database Managed Instance Azure 클라우드에서 호스트 되는 완벽하게 관리되는 SQL Server 데이터베이스 엔진으로 Azure SQL Pass  SQL Server 기능(링크된 서버  기본 제공되는 무료 보조 읽기 전용 복제본) 제공한다이번 포스트에서는 연결된 서버(링크드 서버) 사용하여 읽을  있는 보조 복제본을 연결하는 방법을 살펴 본다.

 

Managed Instance Business Critical Tier 모든 데이터베이스에 대해서 리포트 목적의 용도로 사용할  있는 읽기 전용 상태의 무료 읽기 전용 복제본을 제공한다아래 그림에는 하나의 기본 인스턴스와   개의 읽기 전용 서버로 구성된다 서버는 읽기 전용 끝점을 이용해서 연결된다.


어플리케이션에서 보조 복제본에 접속하는 방법은 기본 인스턴스에 액세스하는  사용하는 것과 동일한 연결 문자열을 사용한다다만 연결 문자열에ApplicationIntent=ReadOnly 추가하면 된다.

기본 인스턴스에서 보조 인스턴스로 연결된 서버를 만드는 경우 T-SQL 사용하여 기본 인스턴스에서 보조 인스턴스로 연결할  있다아래 스크립트는 보조 복제본에 연결된 서버를 만든다.

EXEC sp_addlinkedserver

@server=N'SECONDARY',

@srvproduct=N'',

@provider=N'SQLNCLI',

@provstr = N'ApplicationIntent=ReadOnly',

@datasrc= @@SERVERNAME;

 

@@SERVERNAME Managed Instance 정규화된 도메인 이름을 반환하고 동일한 이름은 보조 인스턴스에 액세스하는데 사용된다추가해야하는 유일한 것은 공급자 문자열에서 ApplicationIntent=ReadOnly 이다

 

읽기 보조 복제본 서버로 연결된 서버를 생성하면 T-SQL 사용하여 읽기 전용 인스턴스를 쿼리   있다예를 들어 아래 쿼리를 사용하여 보조 데이터베이스가 읽기 전용인지 확인할  있다.

SELECT *

FROM OPENQUERY([SECONDARY],

'SELECT DATABASEPROPERTYEX (''master'', ''Updateability'' ) ')

 

또한 4 part name 구문을 사용하여 Secondary 서버의 테이블이나 뷰를 쿼리할  있다.

SELECT *

FROM SECONDARY.master.sys.databases;

 

 

[참고자료]

https://blogs.msdn.microsoft.com/sqlserverstorageengine/2018/08/27/create-linked-server-to-readable-secondary-replica-in-managed-instance-business-critical-service-tier/

 

 

 

2018-08-30 / Sungwook Kang / http://sqlmvp.kr

 

Azure SQL,  Managed Instance, SQL, read only, High Availability, Linked server, Read-only replica



출처: https://sqlmvp.tistory.com/1281?category=663684 [Database Lab]
No. Subject Author Date Views
Notice SQL강좌: 챗GPT와 함께 배우는 SQL Server 무료 강좌 목차와 소개 (2023년 9월 업데이트) 코난(김대우) 2023.08.18 31724
Notice Python 무료 강좌 - 기초, 중급, 머신러닝(2023년 6월 업데이트) 코난(김대우) 2021.01.01 16331
2174 SQL Server Agent Job에서 sysploicy_purge_history 작업실패 jevida(강성욱) 2019.09.04 1436
2173 where절 case관련... BGT051 2019.09.03 1476
2172 SQL Server에서 테이블 이름을 변경하지 않고 테이터만 교체하기 jevida(강성욱) 2019.05.03 2229
2171 SQL Server master 데이터베이스 정리 jevida(강성욱) 2019.04.23 4883
2170 SQL Server 프로토콜과 SQLCMD를 사용한 연결 jevida(강성욱) 2019.04.23 1742
2169 SQL Server Edition 다운그레이드 후 확인사항 [1] jevida(강성욱) 2019.04.23 1651
2168 AlwaysOn 구성환경에서 Server Role 체크 후 Job Agent 실행 중지하기 jevida(강성욱) 2019.04.23 1037
2167 SSRS에서 E-mail 세팅시 SSL 사용 유무 수정하기 jevida(강성욱) 2019.03.26 936
2166 SQL Linux Instance Name 변경 jevida(강성욱) 2019.03.26 816
2165 SQL Linux 업그레이드 jevida(강성욱) 2019.03.26 1083
2164 Azure SQL Managed Instance 에서 SQL Agent의 Job history 기록 보관하기 jevida(강성욱) 2019.03.26 940
2163 Azure VM에서 SQL Server에 대한 저장소 구성 지침 jevida(강성욱) 2019.03.26 943
2162 Azure SQL에 도입된 새로운 집계 함수 APPROX_COUNT_DISTINCT jevida(강성욱) 2019.03.26 706
2161 Azure SQL의 데이터베이스 소유권 체인 jevida(강성욱) 2019.03.26 826
2160 Azure SQL의 내부 디스크 할당 방법 및 저장 가능 용량 확인 jevida(강성욱) 2019.03.26 846
2159 Azure SQL에서 이메일 보내기 jevida(강성욱) 2019.03.26 729
» Azure SQL에서 읽기 전용 복제본에 대한 접속 및 링크 서버 생성 jevida(강성욱) 2019.03.26 829
2157 Azure SQL에서 네트워크를 구성하는 방법 jevida(강성욱) 2019.03.26 576
2156 인덱스 재구성과 통계 업데이트시 발생하는 SQL Server Block jevida(강성욱) 2019.03.26 846
2155 SQL Server Scala UDF Inline 기능을 사용한 쿼리 성능 향상 jevida(강성욱) 2019.03.26 716





XE Login