자습서: Azure Data Studio를 사용하여 SQL Server를 Azure Virtual Machine의 SQL Server로 오프라인 마이그레이션

Azure Data Studio의 Azure Database Migration Service 및 Azure SQL Migration 확장을 사용하면 최소한의 가동 중지 시간으로 SQL Server 온-프레미스 인스턴스의 데이터베이스를 Azure Virtual Machines의 SQL Server(SQL Server 2016 이상)로 마이그레이션할 수 있습니다.

약간의 수동 작업이 필요할 수 있는 데이터베이스 마이그레이션 방법에 대해서는 SQL Server 인스턴스를 Azure Virtual Machines의 SQL Server로 마이그레이션을 참조하세요.

이 자습서에서는 Azure Data Studio와 Azure Database Migration Service를 사용하여 예제 AdventureWorks 데이터베이스를 Azure Virtual Machine의 SQL Server 인스턴스로 마이그레이션하는 방법을 알아봅니다. 이 자습서에서는 마이그레이션 프로세스 중에 허용되는 가동 중지 시간을 고려하는 오프라인 마이그레이션 모드를 사용합니다.

이 자습서에서는 다음을 하는 방법을 알아볼 수 있습니다.

  • Azure Data Studio에서 Azure SQL로 마이그레이션 마법사 열기
  • 원본 SQL Server 데이터베이스의 평가 실행
  • 원본 SQL Server 인스턴스에서 성능 데이터 수집
  • 워크로드에 가장 적합한 Azure Virtual Machines SKU의 SQL Server에 대한 권장 사항 가져오기
  • 원본 SQL Server 인스턴스, 백업 위치 및 Azure Virtual Machine의 대상 SQL Server 인스턴스의 세부 정보 설정
  • Azure Database Migration Service 인스턴스 만들기
  • 마이그레이션을 시작하고 완료될 때까지 진행률 모니터링

이 자습서에서는 SQL Server에서 Azure Virtual Machine의 SQL Server로 오프라인 마이그레이션하는 방법을 설명합니다. 온라인 마이그레이션에 대한 내용은 Azure Data Studio에서 온라인으로 Azure Virtual Machine의 SQL Server로 SQL Server 마이그레이션을 참조하세요.

필수 조건

자습서를 시작하기 전에 수행할 작업

  • Azure Data Studio를 다운로드 및 설치합니다.

  • Azure Data Studio Marketplace에서 Azure SQL 마이그레이션 확장을 설치합니다.

  • 다음 기본 제공 역할 중 하나에 할당된 Azure 계정이 있습니다.

    • Virtual Machines의 SQL Server의 대상 인스턴스 및 SMB(서버 메시지 블록) 네트워크 공유에서 데이터베이스 백업 파일을 업로드하는 스토리지 계정에 대한 기여자
    • Azure Virtual Machines 또는 Azure Storage 계정에서 SQL Server 대상 인스턴스를 포함하는 Azure 리소스 그룹에 대한 읽기 권한자 역할
    • Azure 구독에 대한 소유자 또는 기여자 역할

    이러한 기본 제공 역할 중 하나를 사용하는 대신 사용자 지정 역할을 할당할 수 있습니다.

    Important

    Azure 계정은 마이그레이션 단계를 구성할 때만 필요합니다. 평가 또는 Azure Data Studio의 마이그레이션 마법사에서 Azure 권장 사항을 보려면 Azure 계정이 필요하지 않습니다.

  • Azure Virtual Machine의 SQL Server 대상 인스턴스를 만듭니다.

    Important

    기존 Azure Virtual Machine이 있는 경우 전체 관리 모드에서 SQL IaaS 에이전트 확장에 등록해야 합니다.

  • 원본 SQL Server 인스턴스를 연결하는 데 사용하는 로그인이 SYSADMIN 서버 역할의 구성원이거나 CONTROL SERVER 권한이 있는지 확인합니다.

  • 전체 데이터베이스 백업 파일과 후속 트랜잭션 로그 백업 파일이 포함된 SMB 네트워크 공유, Azure Storage 계정 파일 공유 또는 Azure Storage 계정 Blob 컨테이너를 제공합니다. Database Migration Service는 데이터베이스 마이그레이션 중에 백업 위치를 사용합니다.

    Important

    • Azure Data Studio용 Azure SQL 마이그레이션 확장은 데이터베이스 백업을 수행하지도 않고, 사용자 대신 데이터베이스 백업을 시작하지도 않습니다. 대신, 서비스는 마이그레이션 시 기존 데이터베이스 백업 파일을 사용합니다.
    • 데이터베이스 백업 파일이 SMB 네트워크 공유에 제공된 경우 Database Migration Service를 사용하여 데이터베이스 백업 파일을 업로드하고 데이터베이스를 마이그레이션할 수 있도록 Azure Storage 계정을 만듭니다. Database Migration Service 인스턴스를 만드는 동일한 지역에 Azure Storage 계정을 만들어야 합니다.
    • 각 백업은 별도의 백업 파일 또는 여러 백업 파일에 쓸 수 있습니다. 전체 및 트랜잭션 로그와 같은 여러 백업을 단일 백업 미디어에 추가하는 것은 지원되지 않습니다.
    • 압축된 백업을 제공하여 대량 백업 마이그레이션과 관련된 잠재적인 문제 발생 가능성을 줄일 수 있습니다.
  • 원본 SQL Server 인스턴스를 실행하는 서비스 계정에 데이터베이스 백업 파일이 포함된 SMB 네트워크 공유에 대한 읽기 및 쓰기 권한이 있는지 확인합니다.

  • TDE(투명한 데이터 암호화)로 보호되는 데이터베이스를 마이그레이션하는 경우 데이터를 마이그레이션하기 전에 원본 SQL Server 인스턴스의 인증서를 Azure Virtual Machines의 SQL Server로 마이그레이션해야 합니다. 자세한 내용은 다른 SQL Server 인스턴스로 TDE 보호 데이터베이스 이동을 참조하세요.

    데이터베이스에 Always Encrypted에 의해 보호되는 중요한 데이터가 포함된 경우 마이그레이션 프로세스는 Always Encrypted 키를 Azure Virtual Machines의 SQL Server 대상 인스턴스로 자동으로 마이그레이션합니다.

  • 데이터베이스 백업이 네트워크 파일 공유에 있는 경우 데이터베이스 백업에 액세스하고 마이그레이션하기 위해 자체 호스팅 통합 런타임을 설치할 수 있는 컴퓨터를 제공합니다. 마이그레이션 마법사는 자체 호스팅 통합 런타임을 다운로드하고 설치하기 위한 다운로드 링크와 인증 키를 제공합니다.

    마이그레이션을 준비하기 위해 자체 호스팅 통합 런타임을 설치하는 컴퓨터에 다음 아웃바운드 방화벽 규칙과 도메인 이름이 사용하도록 설정되어 있는지 확인합니다.

    도메인 이름 아웃바운드 포트 설명
    퍼블릭 클라우드: {datafactory}.{region}.datafactory.azure.net
    또는 *.frontend.clouddatahub.net

    Azure Government: {datafactory}.{region}.datafactory.azure.us

    21Vianet에서 운영하는 Microsoft Azure: {datafactory}.{region}.datafactory.azure.cn
    443 자체 호스팅 통합 런타임에서 Database Migration Service에 연결하는 데 필요합니다.

    퍼블릭 클라우드에서 새로 만들어진 Data Factory의 경우 {datafactory}.{region}.datafactory.azure.net 형식인 자체 호스팅 통합 런타임 키에서 FQDN(정규화된 도메인 이름)을 찾습니다.

    기존 Data Factory의 경우 FQDN이 자체 호스팅 통합 키에 표시되지 않으면 *.frontend.clouddatahub.net을 대신 사용합니다.
    download.microsoft.com 443 업데이트를 다운로드하기 위해 자체 호스팅 통합 런타임에서 필요합니다. 자동 업데이트를 사용하지 않도록 설정한 경우 이 도메인 구성을 건너뛸 수 있습니다.
    *.core.windows.net 443 네트워크 공유에서 데이터베이스 백업을 업로드하기 위해 Azure Storage 계정에 연결하는 자체 호스팅 통합 런타임에서 사용합니다.

    데이터베이스 백업 파일이 이미 Azure Storage 계정에 제공된 경우 마이그레이션 프로세스 중에 자체 호스팅 통합 런타임이 필요하지 않습니다.

  • 자체 호스팅 통합 런타임을 사용하는 경우 런타임이 설치된 컴퓨터를 백업 파일이 있는 원본 SQL Server 인스턴스 및 네트워크 파일 공유에 연결할 수 있는지 확인합니다.

  • 네트워크 파일 공유에 대한 액세스를 허용하려면 아웃바운드 포트 445를 사용하도록 설정해야 합니다. 자세한 내용은 자체 호스팅 통합 런타임 사용을 위한 권장 사항을 참조하세요.

  • Azure Database Migration Service를 처음 사용하는 경우 Microsoft.DataMigration 리소스 공급자가 구독에 등록되어 있는지 확인하세요.

Azure Data Studio에서 Azure SQL로 마이그레이션 마법사 열기

Azure SQL로 마이그레이션 마법사를 시작하려면 다음을 수행합니다.

  1. Azure Data Studio에서 연결로 이동합니다. SQL Server의 온-프레미스 인스턴스를 선택하고 연결합니다. Azure 가상 머신의 SQL Server에 연결해도 됩니다.

  2. 서버 연결을 마우스 오른쪽 단추를 클릭하고 관리를 선택합니다.

  3. 일반 아래 서버 메뉴에서 Azure SQL 마이그레이션을 선택합니다.

  4. Azure SQL 마이그레이션 대시보드에서 Azure SQL로 마이그레이션을 선택하여 마이그레이션 마법사를 엽니다.

    Screenshot that shows how to open the Migrate to Azure SQL wizard.

  5. 마법사의 첫 번째 페이지에서 새 세션을 시작하거나 이전에 저장한 세션을 다시 시작합니다.

데이터베이스 평가 실행, 성능 데이터 수집 및 Azure 권장 사항 가져오기

  1. 1단계: 평가할 데이터베이스에서는 Azure SQL로 마이그레이션 마법사에서 평가할 데이터베이스를 선택합니다. 그런 후에 다음을 선택합니다.

  2. 2단계: 평가 결과 및 권장 사항에서는 다음 단계를 완료합니다.

    1. Azure SQL 대상 선택에서 Azure Virtual Machine의 SQL Server를 선택합니다.

      Screenshot that shows an assessment confirmation.

    2. 보기/선택을 선택하여 평가 결과를 봅니다.

    3. 평가 결과에서 데이터베이스를 선택한 다음, 평가 보고서를 검토하여 문제가 없는지 확인합니다.

    4. Azure 권장 사항 가져오기를 선택하여 권장 사항 창을 엽니다.

    5. 지금 성능 데이터 수집을 선택합니다. 로컬 컴퓨터에서 폴더를 선택하여 성능 로그를 저장한 다음, 시작을 선택합니다.

      Azure Data Studio는 사용자가 데이터 수집을 중지하거나 Azure Data Studio를 닫을 때까지 성능 데이터를 수집합니다.

      10분 후에 Azure Data Studio는 권장 사항을 Azure Virtual Machines의 SQL Server에 사용할 수 있음을 나타냅니다. 첫 번째 권장 사항이 생성된 후에는 데이터 수집 다시 시작을 선택하여 데이터 수집 프로세스를 계속하고 SKU 권장 사항을 구체화할 수 있습니다. 확장 평가는 사용 패턴이 시간에 따라 달라지는 경우에 특히 유용합니다.

    6. 선택한 Azure Virtual Machines의 SQL Server 대상에서 세부 정보 보기를 선택하여 자세한 SKU 권장 사항 보고서를 엽니다.

    7. Azure Virtual Machines의 SQL Server 권장 사항 검토에서 권장 사항을 검토합니다. 권장 사항의 복사본을 저장하려면 권장 사항 보고서 저장 확인란을 선택합니다.

  3. 닫기를 선택하여 권장 사항 창을 닫습니다.

  4. 다음을 선택하여 마법사에서 데이터베이스 마이그레이션을 계속합니다.

마이그레이션 설정 구성

  1. 3단계: Azure SQL 대상에서는 [Azure SQL로 마이그레이션] 마법사에서 Azure 계정, Azure 구독, Azure 지역 또는 위치, Azure Virtual Machines 인스턴스에 대한 대상 SQL Server를 포함하는 리소스 그룹을 선택합니다. 그런 후에 다음을 선택합니다.

  2. 4단계: 마이그레이션 모드에서는 오프라인 마이그레이션을 선택하고 다음을 선택합니다.

    참고 항목

    오프라인 마이그레이션 모드에서는 데이터베이스 백업 파일이 Azure Virtual Machines에 대한 대상 SQL Server 인스턴스에 복원되는 동안에는 원본 SQL Server 데이터베이스를 쓰기 작업에 사용하면 안 됩니다. 애플리케이션 가동 중지 시간은 마이그레이션 프로세스의 시작부터 완료까지 계속됩니다.

  3. 5단계: 데이터 원본 구성에서는 데이터베이스 백업의 위치를 선택합니다. 데이터베이스 백업은 온-프레미스 네트워크 공유 또는 Azure 스토리지 Blob 컨테이너에 있습니다.

    참고 항목

    데이터베이스 백업이 온-프레미스 네트워크 공유에서 제공되는 경우 마법사의 다음 단계에서 자체 호스팅 통합 런타임을 설정해야 합니다. 자체 호스팅 통합 런타임은 원본 데이터베이스 백업에 액세스하고, 백업 세트의 유효성을 확인하고, Azure Storage 계정에 백업을 업로드하는 데 필요합니다.

    데이터베이스 백업이 이미 Azure Storage Blob 컨테이너에 있는 경우 자체 호스팅 통합 런타임을 설정할 필요가 없습니다.

  • 네트워크 공유에 있는 백업의 경우 다음 정보를 입력하거나 선택합니다.

    이름 설명
    원격 자격 증명 - 사용자 이름 원본 SQL Server 인스턴스에 연결하고 백업 파일의 유효성을 검사하기 위한 자격 증명(Windows 및 SQL 인증)입니다.
    원본 자격 증명 - 암호 원본 SQL Server 인스턴스에 연결하고 백업 파일의 유효성을 검사하기 위한 자격 증명(Windows 및 SQL 인증)입니다.
    백업이 포함된 네트워크 공유 위치 전체 및 트랜잭션 로그 백업 파일이 포함된 네트워크 공유 위치입니다. 유효한 백업 세트에 속하지 않는 네트워크 공유의 잘못된 파일이나 백업 파일은 마이그레이션 프로세스 중에 자동으로 무시됩니다.
    네트워크 공유 위치에 대한 읽기 권한이 있는 Windows 사용자 계정 백업 파일을 검색할 수 있도록 네트워크 공유에 대한 읽기 권한이 있는 Windows 자격 증명(사용자 이름)입니다.
    암호 백업 파일을 검색할 수 있도록 네트워크 공유에 대한 읽기 권한이 있는 Windows 자격 증명(암호)입니다.
    대상 데이터베이스 이름 마이그레이션 프로세스 중에 대상 데이터베이스 이름을 수정할 수 있습니다.
  • Azure Storage Blob 컨테이너에 저장된 백업의 경우 다음 정보를 입력하거나 선택합니다.

    이름 설명
    대상 데이터베이스 이름 마이그레이션 프로세스 중에 대상 데이터베이스 이름을 수정할 수 있습니다.
    스토리지 계정 세부 정보 백업 파일이 있는 리소스 그룹, 스토리지 계정 및 컨테이너.
    마지막 백업 파일 마이그레이션할 데이터베이스의 마지막 백업 파일 이름입니다.

    Important

    루프백 확인 기능을 사용하도록 설정하고 원본 SQL Server와 파일 공유가 동일한 컴퓨터에 있으면 원본은 FQDN을 사용하여 파일 공유에 액세스할 수 없습니다. 이 문제를 해결하려면 루프백 확인 기능을 사용하지 않도록 설정하세요.

  • Azure Data Studio에 대한 Azure SQL 마이그레이션 확장은 SQL Server 데이터베이스를 Azure로 마이그레이션하기 위해 더 이상 Azure Storage 계정 네트워크 설정에 대한 특정 구성을 필요로 하지 않습니다. 그러나 데이터베이스 백업 위치 및 원하는 스토리지 계정 네트워크 설정에 따라 리소스가 Azure Storage 계정에 액세스할 수 있도록 하는 데 필요한 몇 가지 단계가 있습니다. 다양한 마이그레이션 시나리오 및 네트워크 구성은 다음 표를 참조하세요.

    시나리오 SMB 네트워크 공유 Azure Storage 계정 컨테이너
    모든 네트워크에서 사용 추가 단계 없음 추가 단계 없음
    선택한 가상 네트워크 및 IP 주소에서 사용 1a 참조 2a 참조
    선택한 가상 네트워크 및 IP 주소에서 사용하도록 설정 + 프라이빗 엔드포인트 1b 참조 2b 참조

    1a - Azure Blob Storage 네트워크 구성

    Azure VM에 SHIR(자체 호스팅 통합 런타임)이 설치되어 있는 경우 섹션 1b - Azure Blob Storage 네트워크 구성을 참조하세요. 온-프레미스 네트워크에 SHIR(자체 호스팅 통합 런타임)이 설치된 경우 다음과 같이 Azure Storage 계정에 호스팅 머신의 클라이언트 IP 주소를 추가해야 합니다.

    Screenshot that shows the storage account network details

    이 특정 구성을 적용하려면 SHIR 컴퓨터에서 Azure Portal에 연결하고, Azure Storage 계정 구성을 열고, 네트워킹을 선택한 다음, 클라이언트 IP 주소 추가 확인란에 표시합니다. 저장을 선택하여 영구적으로 변경합니다. 나머지 단계는 섹션 2a - Azure Blob Storage 네트워크 구성(프라이빗 엔드포인트)을 참조하세요.

    1b - Azure Blob Storage 네트워크 구성

    SHIR이 Azure VM에서 호스트되는 경우 가상 머신에 IP 주소 범위 섹션에 추가할 수 없는 비공개 IP 주소가 있으므로 VM의 가상 네트워크를 Azure Storage 계정에 추가해야 합니다.

    Screenshot that shows the storage account network firewall configuration.

    이 특정 구성을 적용하려면 Azure Storage 계정을 찾고, 데이터 스토리지 패널에서 네트워킹을 선택한 다음, 기존 가상 네트워크 추가 확인란에 표시합니다. 새 패널이 열리고 Integration Runtime을 호스팅하는 Azure VM의 구독, 가상 네트워크 및 서브넷을 선택합니다. 이 정보는 Azure Virtual Machine의 개요 페이지에서 찾을 수 있습니다. 서브넷에서 서비스 엔드포인트 필요라고 표시될 수 있습니다. 그런 경우 사용하도록 설정을 선택합니다. 모든 것이 준비되면 업데이트를 저장합니다. 나머지 필수 단계는 섹션 2a - Azure Blob Storage 네트워크 구성(프라이빗 엔드포인트)을 참조하세요.

    2a - Azure Blob Storage 네트워크 구성(프라이빗 엔드포인트)

    백업이 Azure Storage 컨테이너에 직접 배치되는 경우 Azure Storage 계정과 통신하는 Integration Runtime이 없으므로 위의 모든 단계가 필요하지 않습니다. 그러나 대상 SQL Server 인스턴스가 Azure Storage 계정과 통신하여 컨테이너에서 백업을 복원할 수 있는지 확인해야 합니다. 이 특정 구성을 적용하려면 섹션 1b - Azure Blob Storage 네트워크 구성의 지침에 따라 "기존 가상 네트워크 추가" 팝업을 채울 때 대상 SQL 인스턴스 Virtual Network를 지정합니다.

    2b - Azure Blob Storage 네트워크 구성(프라이빗 엔드포인트)

    Azure Storage 계정에 프라이빗 엔드포인트가 설정된 경우 섹션 2a - Azure Blob Storage 네트워크 구성(프라이빗 엔드포인트)에 설명된 단계를 따릅니다. 그러나 대상 SQL Server 서브넷뿐만 아니라 프라이빗 엔드포인트의 서브넷을 선택해야 합니다. 프라이빗 엔드포인트가 대상 SQL Server 인스턴스와 동일한 VNet에서 호스트되는지 확인합니다. 그렇지 않은 경우 Azure Storage 계정 구성 섹션의 프로세스를 사용하여 다른 프라이빗 엔드포인트를 만듭니다.

Database Migration Service 인스턴스 만들기

6단계: Azure Database Migration Service에서는 [Azure SQL로 마이그레이션] 마법사에서 새 Azure Database Migration Service 인스턴스를 만들거나 이전에 만든 기존 인스턴스를 다시 사용합니다.

참고 항목

이전에 Azure Portal에서 Database Migration Service 인스턴스를 만든 경우 해당 인스턴스는 Azure Data Studio의 마이그레이션 마법사에서 다시 사용할 수 없습니다. Azure Data Studio를 사용하여 인스턴스를 만든 경우에만 인스턴스를 다시 사용할 수 있습니다.

기존 Database Migration Service 인스턴스 사용

기존 Database Migration Service 인스턴스를 사용하려면 다음을 수행합니다.

  1. 리소스 그룹에서 기존 Database Migration Service 인스턴스를 포함하고 있는 리소스 그룹을 선택합니다.

  2. Azure Database Migration Service에서 선택한 리소스 그룹에 있는 기존 Database Migration Service 인스턴스를 선택합니다.

  3. 다음을 선택합니다.

새 Database Migration Service 인스턴스 만들기

새 Database Migration Service 인스턴스를 만들려면 다음을 수행합니다.

  1. 리소스 그룹에서 새 Database Migration Service 인스턴스를 포함할 새 리소스 그룹을 만듭니다.

  2. Azure Database Migration Service에서 새로 만들기를 선택합니다.

  3. Azure Database Migration Service 만들기에서 Database Migration Service 인스턴스의 이름을 입력하고 만들기를 선택합니다.

  4. 통합 런타임 설정에서 다음 단계를 완료합니다.

    1. 통합 런타임 다운로드 및 설치 링크를 선택하여 웹 브라우저에서 다운로드 링크를 엽니다. 통합 런타임을 다운로드한 다음, 원본 SQL Server 인스턴스에 연결하기 위한 필수 구성 요소를 충족하는 컴퓨터에 설치합니다.

      설치가 완료되면 Microsoft Integration Runtime Configuration Manager가 자동으로 열리고 등록 프로세스가 시작됩니다.

    2. 인증 키 테이블에서 마법사에 제공된 인증 키 중 하나를 복사하여 Azure Data Studio에 붙여넣습니다. 인증 키가 유효하면 Integration Runtime Configuration Manager에 녹색 체크 아이콘이 표시됩니다. 녹색 체크 아이콘은 등록을 계속해도 좋다는 뜻입니다.

      자체 호스팅 통합 런타임을 등록한 후에는 Microsoft Integration Runtime Configuration Manager를 닫습니다.

      참고 항목

      자체 호스팅 통합 런타임 사용 방법에 대한 자세한 내용은 자체 호스팅 통합 런타임을 만들고 구성하는 방법을 참조하세요.

  5. Azure Data Studio의 Azure Database Migration Service 만들기에서 연결 테스트를 선택하여 새로 만든 Database Migration Service 인스턴스가 새로 등록한 자체 호스팅 통합 런타임에 연결되어 있는지 확인합니다.

  6. Azure Data Studio의 마이그레이션 마법사로 돌아갑니다.

데이터베이스 마이그레이션 시작

7단계: 요약에서는 Azure SQL로 마이그레이션 마법사에서 이전에 만든 구성을 검토한 다음, 마이그레이션 시작을 선택하여 데이터베이스 마이그레이션을 시작합니다.

데이터베이스 마이그레이션 모니터링

  1. Azure Data Studio의 서버 메뉴에 있는 일반에서 Azure SQL 마이그레이션을 선택하여 Azure SQL 마이그레이션에 대한 대시보드로 이동합니다.

    데이터베이스 마이그레이션 상태에서 진행 중, 완료 및 실패한 마이그레이션(있는 경우)을 추적하거나 모든 데이터베이스 마이그레이션을 볼 수 있습니다.

    monitor migration dashboard

  2. 진행 중인 데이터베이스 마이그레이션을 선택하여 활성 마이그레이션을 확인합니다.

    특정 마이그레이션에 대한 자세한 내용을 보려면 데이터베이스 이름을 선택합니다.

    마이그레이션 세부 정보 창에 백업 파일과 해당 상태가 표시됩니다.

    상태 설명
    도착 백업 파일이 원본 백업 위치에 도착했으며 유효성 검사를 마쳤습니다.
    업로드 통합 런타임이 Azure 스토리지에 백업 파일을 업로드하고 있습니다.
    Uploaded 백업 파일이 Azure Storage에 업로드되었습니다.
    복원 중 서비스는 Azure Virtual Machines의 SQL Server로 백업 파일을 복원하고 있습니다.
    복원됨 백업 파일이 Azure Virtual Machines의 SQL Server에 성공적으로 복원되었습니다.
    Canceled 마이그레이션 프로세스가 취소되었습니다.
    무시됨 백업 파일이 유효한 데이터베이스 백업 체인에 속하지 않아 무시되었습니다.

모든 데이터베이스 백업이 Azure Virtual Machines의 SQL Server 인스턴스에 복원되면 마이그레이션된 데이터베이스를 사용할 수 있도록 Database Migration Service가 자동 마이그레이션 컷오버를 시작합니다. 마이그레이션 상태가 진행 중에서 성공으로 변경됩니다.

제한 사항

Azure Data Studio용 Azure SQL 확장을 사용하여 Azure VM의 SQL Server로 마이그레이션하는 데는 다음과 같은 제한 사항이 있습니다.

  • 단일 데이터베이스를 마이그레이션하는 경우 데이터베이스 백업은 데이터베이스 폴더(컨테이너 루트 폴더 포함) 내의 플랫 파일 구조에 배치되어야 하며 폴더는 지원되지 않으므로 중첩될 수 없습니다.
  • 동일한 Azure Blob Storage 컨테이너를 사용하여 여러 데이터베이스를 마이그레이션하는 경우 다른 데이터베이스에 대한 백업 파일을 컨테이너 내의 별도 폴더에 배치해야 합니다.
  • 대상 Azure 가상 머신의 SQL Server에서 DMS를 사용하여 기존 데이터베이스를 덮어쓰는 것은 지원되지 않습니다.
  • 원본 토폴로지와 일치하도록 대상에서 고가용성 및 재해 복구를 구성하는 것은 DMS에서 지원되지 않습니다.
  • 다음 서버 개체는 지원되지 않습니다.
    • SQL Server 에이전트 작업
    • 자격 증명
    • SSIS 패키지
    • 서버 감사
  • DMS를 사용한 데이터베이스 마이그레이션을 위해 Azure Data Factory에서 만든 기존 자체 호스팅 통합 런타임을 사용할 수 없습니다. 처음에 자체 호스팅 통합 런타임은 Azure Data Studio에서 Azure SQL 마이그레이션 확장을 사용하여 만들어야 하며 추가 데이터베이스 마이그레이션에 재사용할 수 있습니다.
  • Azure Virtual Machines의 SQL Server로 마이그레이션하는 경우 SQL Server 2008 이하가 있는 VM은 대상 버전으로 지원되지 않습니다.
  • SQL Server 2012 또는 SQL Server 2014가 있는 VM을 사용하는 경우 네트워크 공유 옵션을 사용하는 대신 Azure Storage Blob 컨테이너에 원본 데이터베이스 백업 파일을 저장해야 합니다. 블록 Blob은 SQL 2016 이상에서만 지원되므로 백업 파일은 페이지 Blob으로 저장합니다.
  • 대상 Azure 가상 머신의 SQL IaaS 에이전트 확장이 경량 모드가 아닌 전체 모드인지 확인해야 합니다.
  • SQL IaaS 에이전트 확장은 기본 서버 인스턴스 또는 단일 명명된 인스턴스의 관리만 지원합니다.
  • SQL Server Azure Virtual Machine으로 마이그레이션할 수 있는 데이터베이스 수는 하드웨어 사양 및 워크로드에 따라 달라지지만 적용된 제한은 없습니다. 그러나 각 데이터베이스에 대한 모든 마이그레이션 작업(마이그레이션 시작, 중단)은 순차적으로 몇 분 정도 소요됩니다. 예를 들어 100개의 데이터베이스를 마이그레이션하려면 마이그레이션 큐를 만드는 데 약 200분(2 x 100), 100개 데이터베이스(백업 및 복원 시간 제외)를 모두 잘라내는 데 약 100분(1 x 100)이 걸릴 수 있습니다. 따라서 데이터베이스 수가 증가함에 따라 마이그레이션 속도가 느려집니다. Microsoft는 엄격한 마이그레이션 테스트에 따라 더 긴 마이그레이션 기간을 미리 예약하거나 SQL Server Azure VM으로 마이그레이션할 때 많은 수의 데이터베이스를 일괄 처리로 분할하는 것을 권장합니다.
  • VM이 백업 파일에 액세스할 수 있도록 Azure Storage 계정의 네트워킹/방화벽을 구성하는 것 외에도 스토리지 계정에 대한 아웃바운드 연결을 허용하도록 Azure VM의 SQL Server에 대한 네트워킹/방화벽을 구성해야 합니다.
  • SQL 마이그레이션이 진행되는 동안 대상 Azure VM의 SQL Server 전원을 켠 상태로 유지해야 합니다. 또한 새 마이그레이션을 만들 때 마이그레이션을 장애 조치(failover)하거나 취소합니다.
  • 오류: Login failed for user 'NT Service\SQLIaaSExtensionQuery. 이유: SQL Server 인스턴스가 단일 사용자 모드입니다. 한 가지 가능한 이유는 대상 Azure VM의 SQL Server가 업그레이드 모드에 있기 때문입니다. 솔루션: 대상 Azure VM의 SQL Server가 업그레이드 모드를 종료하고 마이그레이션을 다시 시작할 때까지 기다리세요.
  • 오류: Ext_RestoreSettingsError, message: Failed to create restore job.;Cannot create file 'F:\data\XXX.mdf' because it already exists. 솔루션: 대상 Azure VM의 SQL Server에 연결하고 XXX.mdf 파일을 삭제합니다. 그런 다음, 마이그레이션을 다시 시작합니다.

다음 단계