링크를 사용하여 마이그레이션 - Azure SQL Managed Instance

적용 대상:Azure SQL Managed Instance

이 문서에서는 Managed Instance 링크 사용하여 SQL Server 데이터베이스를 Azure SQL Managed Instance 마이그레이션하는 방법을 설명합니다.

자세한 마이그레이션 가이드는 migrate to Azure SQL Managed Instance 검토하세요. 마이그레이션 도구를 비교하려면 Managed Instance 링크를 사용하여 LRS 호환성 검토합니다.

참고

이제 Azure Arc 사용하도록 설정된 SQL Server 인스턴스를 Azure 포털을 통해 직접 Azure SQL Managed Instance 마이그레이션할 수 있습니다. 자세한 내용은 migrate to Azure SQL Managed Instance 참조하세요.

개요

Managed Instance 링크를 사용하면 어디에서 호스트되든지 SQL Server를 Azure SQL Managed Instance로 마이그레이션할 수 있습니다. 이 링크는 Always On 가용성 그룹 기술을 사용하여 기본 SQL Server 인스턴스에서 보조 SQL Managed Instance 거의 실시간으로 변경 내용을 복제합니다. 이 링크는 SQL Server와 Azure SQL Managed Instance 간의 유일하게 진정으로 온라인 마이그레이션 옵션을 제공합니다. 왜냐하면 유일한 가동 중지 시간은 대상 SQL 관리형 인스턴스로의 전환이기 때문입니다.

링크를 사용하여 마이그레이션하면 다음을 얻을 수 있습니다.

  • Azure 마이그레이션을 완료하기 전에 SQL Managed Instance 읽기 전용 워크로드를 테스트하는 기능입니다.
  • 당신이 필요로 하는 만큼, 몇 주에서 심지어 몇 달 동안 링크와 마이그레이션을 계속 실행할 수 있는 능력.
  • Azure로 데이터의 가장 빠른 실시간 복제를 제공하는 거의 실시간 데이터 복제입니다.
  • 현재 사용 가능한 다른 모든 솔루션에 비해 가동 중지 시간이 가장 짧은 마이그레이션.
  • 대상 SQL Managed Instance로의 즉각적인 전환.
  • 준비가 되면 언제든지 마이그레이션할 수 있는 기능.
  • 단일 또는 여러 SQL Server 인스턴스에서 Azure 동일하거나 여러 SQL 관리형 인스턴스로 단일 또는 여러 데이터베이스를 마이그레이션하는 기능입니다.
  • 중요 비즈니스용 서비스 계층으로의 유일한 실질적인 온라인 마이그레이션.

참고

링크당 하나의 데이터베이스만 마이그레이션할 수 있지만 동일한 SQL Server 인스턴스에서 동일한 SQL Managed Instance 여러 링크를 설정할 수 있습니다.

전환 동작

전환 동작은 마이그레이션 원본 SQL Server 버전과 대상 SQL Managed Instance의 업데이트 정책에 따라 달라집니다.

  • SQL Server 2016에서 SQL Server 2019까지는 SQL Managed Instance로 전환하면 링크가 끊어집니다.
  • SQL Server 2022 이상 버전의 경우 SQL Managed Instance로 전환할 때 장애 조치 중 선택에 따라 링크를 삭제하거나 유지할 수 있습니다. 링크를 유지하도록 선택하고 SQL 관리형 인스턴스가 일치하는 업데이트 정책으로 구성된 경우 필요한 경우 다시 SQL Server 마이그레이션할 수 있습니다.

마이그레이션의 경우 링크를 제거하는 것이 좋습니다. 링크를 유지하지만 나중에 제거하기로 결정한 경우 Azure 장애 조치(failover) 후 데이터베이스의 첫 번째 전체 백업을 완료할 때까지 기다린 후 링크를 제거합니다. 이 단계에서는 데이터베이스가 정상이며 SQL Managed Instance 완벽하게 작동하도록 합니다. 또한 링크를 너무 일찍 제거한 경우 서버를 다시 시작한 후 데이터베이스를 일시적으로 사용할 수 없게 되는 드문 알려진 문제를 방지할 수 있습니다. 자세한 내용은 MI 링크 장애 조치(failover) 후 서버를 다시 시작한 후 데이터베이스를 사용할 수 없게 되는 것을 참조하세요.

마이그레이션을 되돌리기

SQL 관리형 인스턴스의 업데이트 정책에 따라 Azure SQL 관리형 인스턴스에서 SQL Server로의 역방향 마이그레이션이 지원될 수 있습니다. 다음은 그 예입니다.

  • SQL Server 2022 업데이트 정책: SQL Server 2022 업데이트 정책으로 구성된 인스턴스의 데이터베이스를 SQL Server 2022 인스턴스로 복원할 수 있습니다.
  • SQL Server 2025 업데이트 정책: SQL Server 2025 업데이트 정책으로 구성된 인스턴스의 데이터베이스를 SQL Server 2025 인스턴스로 복원할 수 있습니다.
  • Always-up-to-date 업데이트 정책: Always-up-to-date 업데이트 정책을 사용하여 구성된 인스턴스의 데이터베이스를 다시 SQL Server 복원할 수 없습니다.

원본 SQL Server 버전이 2022년 SQL Server 이전 버전인 경우 역방향 마이그레이션이 불가능합니다. 데이터베이스를 SQL Managed Instance 마이그레이션하는 경우 이전 SQL Server 버전과 호환되지 않는 최신 데이터베이스 버전으로 내부 업그레이드가 진행됩니다. 역방향 마이그레이션 데이터베이스 호환성은 SQL Managed Instance 해당 업데이트 정책으로 구성된 경우에만 사용할 수 있습니다.

필수 조건

마이그레이션에 Azure SQL Managed Instance 링크를 사용하려면 다음 필수 구성 요소가 필요합니다.

  • 활성 Azure 구독입니다. 아직 없는 경우 체험 계정을 만들 수 있습니다.
  • 필요한 서비스 업데이트가 설치된 SQL Server 지원되는 버전입니다.

평가하고 발견하다

원본 환경이 지원되는지 확인한 후에 마이그레이션 전 단계부터 시작합니다. 모든 기존 데이터 원본을 검색하고, 마이그레이션 적합성을 평가하고, 마이그레이션을 방해할 수 있는 차단 문제를 식별합니다. 검색 단계에서 네트워크를 검사하여 조직에서 사용하는 모든 SQL Server 인스턴스 및 기능을 식별합니다.

다음 도구를 사용하여 사용자 환경에서 SQL 원본을 검색할 수 있습니다.

  • Azure Arc 지원 SQL Server: Azure Arc가 지원하는 SQL Server는 자동으로 Azure로의 마이그레이션 평가를 생성하여 검색 프로세스 및 마이그레이션 준비 평가를 간소화합니다.
  • Azure Migrate 온-프레미스 서버의 마이그레이션 적합성을 평가하고, 성능 기반 크기 조정을 수행하고, Azure 실행하기 위한 비용 추정을 제공합니다.
  • Microsoft 평가 및 계획 도구 키트("MAP 도구 키트") 현재 IT 인프라를 평가합니다. 도구 키트는 강력한 인벤토리, 평가, 보고 도구를 제공하여 마이그레이션 계획 프로세스를 간소화합니다.

데이터 원본이 검색된 후 마이그레이션 차단 또는 호환성 문제를 식별하기 위해 Azure SQL Managed Instance 마이그레이션할 수 있는 온-프레미스 SQL Server 인스턴스를 평가합니다.

마이그레이션 준비 상태 평가를 사용하여 원본 SQL Server 인스턴스를 평가할 수 있습니다.

자세한 참고 자료는 사전 마이그레이션을 검토하세요.

대상 인스턴스 만들기

기존 환경을 평가하고 대상 SQL 관리형 인스턴스에 적합한 서비스 계층 및 하드웨어 구성을 결정한 후 Azure Portal, PowerShell 또는 Azure CLI를 사용하여 대상 인스턴스를 배포합니다.

대상 SQL 관리되는 인스턴스를 만든 후 SQL Server 인스턴스의 데이터베이스와 Azure SQL Managed Instance 간에 링크를 구성합니다. 먼저 환경을 준비한 다음SQL Server Management Studio(SSMS) 또는 scripts 사용하여 링크를 구성합니다.

복제 지연 확인

계획된 마이그레이션 장애 조치를 수행하기 전에 보조 복제본이 주 복제본을 따라잡는 것이 중요합니다. 보조 복제본이 주 복제본보다 훨씬 뒤처지면 계획된 장애 조치(failover)가 시간 초과되고 실패할 수 있습니다.

SQL Server 및 SQL Managed Instance 다음 T-SQL 쿼리를 사용하여 복제본 간의 복제 지연을 모니터링합니다.

-- Execute on SQL Server and SQL Managed Instance 
USE master
DECLARE @link_name varchar(max) = '<DAGname>'
SELECT
   ag.name [Link name], 
   ars1.role_desc [Link role],
   ars2.connected_state_desc [Link connected state],
   ars2.synchronization_health_desc [Link sync health],
   drs.secondary_lag_seconds [Link replication latency (seconds)]
FROM
   sys.availability_groups ag 
   JOIN sys.dm_hadr_availability_replica_states ars1
   ON ag.group_id = ars1.group_id
   JOIN sys.dm_hadr_availability_replica_states ars2
   ON ag.group_id = ars2.group_id
   JOIN sys.dm_hadr_database_replica_states drs
   ON ars2.replica_id = drs.replica_id
WHERE 
   ag.is_distributed = 1 AND ag.name = @link_name AND ars1.is_local = 1 AND ars2.is_local = 0
GO

복제 지연 시간이 높은 경우 보조 복제본이 주 복제본을 따라잡을 때까지 기다립니다. 주 복제본에서 워크로드를 일시 중지하거나, 두 인스턴스 간의 연결 네트워크 처리량을 개선하거나, 보조 복제본의 리소스 용량을 늘리는 등 지연이 지속되는 경우 추가 문제 해결 단계를 수행해야 할 수 있습니다. SQL Server 주 복제본에서 워크로드를 중지하는 가장 쉬운 방법은 인스턴스에 대한 애플리케이션 연결을 끊는 것입니다.

여러 데이터베이스 마이그레이션

최적의 성능과 예측 가능성을 위해 동일한 서버의 인스턴스에서 여러 데이터베이스를 마이그레이션하려는 경우 한 번에 인스턴스당 8개의 데이터베이스를 마이그레이션합니다. 예를 들어 각각 32개의 연결된 데이터베이스가 있는 10개의 인스턴스가 있는 경우 계획된 장애 조치(failover)를 사용하여 각 인스턴스에서 한 번에 8개의 데이터베이스를 마이그레이션하고 모든 데이터베이스가 마이그레이션될 때까지 프로세스를 반복합니다.

데이터 동기화 및 전환

링크가 설정되고 마이그레이션할 준비가 되면 다음 단계를 수행합니다(일반적으로 유지 관리 기간에 수행함).

  1. 주 SQL Server 데이터베이스에서 워크로드를 중지하여 SQL Managed Instance 보조 데이터베이스가 따라잡을 수 있도록 합니다. SQL Server 주 복제본에서 워크로드를 중지하는 가장 쉬운 방법은 인스턴스에 대한 애플리케이션 연결을 끊는 것입니다.
  2. 모든 데이터가 SQL Managed Instance 보조 데이터베이스로 전송되었는지 확인합니다. 복제 지연을 확인하여 보조 복제본이 주 복제본과 호환되는지 확인합니다.
  3. 링크 장애 조치를 보조 SQL 관리 인스턴스로 계획된 장애 조치를 선택하여 수행합니다.
  4. (선택 사항) 장애 조치( failover) 성공 후 링크 제거 확인란을 선택하여 장애 조치(failover)가 한 가지 방법이며 링크가 제거되었는지 확인합니다.
  5. (선택 사항) 일치하는 SQL Managed Instance update 정책 지원되는 SQL Server 버전인 경우 장애 조치(failover) 후 링크를 유지하여 필요한 경우 마이그레이션을 되돌릴 수 있습니다. 특정 버전 세부 정보는 마이그레이션 취소 섹션을 확인하세요.
  6. 애플리케이션을 컷오버하여 SQL Managed Instance 엔드포인트에 연결합니다.
  7. (선택 사항) 장애 조치(failover) 중에 링크를 제거하도록 선택하지 않은 경우 더 이상 필요하지 않은 경우 중단 후 링크를 제거할 수 있습니다.

마이그레이션 유효성 검사

SQL Managed Instance 대상을 컷오버한 후 애플리케이션을 모니터링하고 성능을 테스트하며 문제를 수정합니다.

자세한 내용은 마이그레이션 후를 검토하세요.

마이그레이션과 관련된 알려진 문제

링크를 사용하여 마이그레이션과 관련된 다음과 같은 알려진 문제를 검토합니다.

드문 경우지만 링크 장애 조치(failover) 후 서버를 다시 시작한 후 SQL Managed Instance 데이터베이스를 일시적으로 사용할 수 없게 될 수 있습니다. 이 알려진 문제는 Azure SQL Managed Instance 초기 장애 조치(failover) 후 데이터베이스의 전체 백업을 완료하기 전에 링크를 삭제할 때 발생합니다.

데이터베이스는 Microsoft 개입한 후 자동으로 복구되지만 이 복구에는 다소 시간이 걸릴 수 있습니다.

이 문제를 방지하려면 SQL Server에서 SQL Managed Instance로 장애 조치한 후 첫 번째 전체 백업이 완료될 때까지 링크를 삭제하지 마세요. 자세한 내용은 서버를 다시 시작한 후 사용할 수 없는 데이터베이스를 참조하세요.

SQL Managed Instance로 마이그레이션한 후 작업 오류 복원

데이터베이스를 SQL Server 2019 및 이후 버전에서 Azure SQL Managed Instance로 마이그레이션할 때, 가속화된 데이터베이스 복구가 활성화되어 있지만, PVS(영구 버전 저장소)가 PRIMARY 파일 그룹과 다른 것으로 설정된 경우, 대상 SQL 관리형 인스턴스에서 복원 작업 오류가 발생할 수 있습니다.

이 문제를 해결하려면 SQL Managed Instance로 마이그레이션하기 전에 원본 SQL Server 데이터베이스에서 PVS(영구 버전 저장소)를 PRIMARY 로 설정해야 합니다. PVS PRIMARY를 설정하지 않고 데이터베이스를 이미 마이그레이션한 경우 원본 SQL Server 데이터베이스에서 데이터베이스를 설정한 다음, 데이터베이스를 SQL Managed Instance로 다시 마이그레이션할 수 있습니다.

SQL Managed Instance로 마이그레이션한 후 가속 데이터베이스 복구를 사용할 수 없음

SQL Server 2019부터, 데이터베이스를 Azure SQL Managed Instance로 마이그레이션하고 원본 데이터베이스에서 가속 데이터베이스 복구를 비활성화한 경우, 대상 SQL 관리형 인스턴스에서 가속 데이터베이스 복구를 사용할 수 없습니다.

이 문제를 해결하려면 SQL Managed Instance로 마이그레이션하기 전에 원본 SQL Server 데이터베이스에서 가속화된 데이터베이스 복구를 활성화하십시오. 가속화된 데이터베이스 복구를 사용하도록 설정하지 않고 데이터베이스를 이미 마이그레이션한 경우 원본 SQL Server 데이터베이스에서 데이터베이스를 사용하도록 설정한 다음, 데이터베이스를 SQL 관리형 인스턴스로 다시 마이그레이션할 수 있습니다.

SQL Server 2017 및 이전 버전은 가속화된 데이터베이스 복구를 지원하지 않으므로 이 문제는 해당 버전의 SQL Server에서 마이그레이션된 데이터베이스에는 적용되지 않습니다.

SQL Managed Instance로 마이그레이션한 후 Service Broker를 사용할 수 없음

데이터베이스를 Azure SQL Managed Instance로 마이그레이션하고 원본 데이터베이스에서 Service Broker를 사용하지 않도록 설정한 경우 대상 SQL 관리되는 인스턴스에서 Service Broker를 사용할 수 없습니다.

이 문제를 해결하려면 SQL Managed Instance 마이그레이션하기 전에 원본 SQL Server 데이터베이스에서 Service Broker를 사용하도록 설정해야 합니다. Service Broker를 사용하도록 설정하지 않고 데이터베이스를 이미 마이그레이션한 경우 원본 SQL Server 데이터베이스에서 데이터베이스를 사용하도록 설정한 다음 데이터베이스를 SQL Managed Instance로 다시 마이그레이션할 수 있습니다.

링크를 사용하려면 다음을 수행합니다.

링크에 대해 자세히 알아보려면 다음을 수행합니다.

다른 복제 및 마이그레이션 시나리오의 경우 다음을 고려합니다.