자습서: Azure Portal 통해 DMS를 사용하여 온라인으로 Azure Database for MySQL - 단일 서버를 유연한 서버로 마이그레이션
참고 항목
이 문서에는 Microsoft에서 더 이상 사용하지 않는 용어인 슬레이브라는 용어에 대한 참조가 포함되어 있습니다. 소프트웨어에서 용어가 제거되면 이 문서에서 해당 용어가 제거됩니다.
여러 데이터베이스 원본에서 Azure 데이터 플랫폼으로 원활하게 마이그레이션할 수 있도록 설계된 완전 관리형 서비스인 Azure DMS(Database Migration Service)를 사용하여 Azure Database for MySQL – 단일 서버의 인스턴스를 Azure Database for MySQL – 유연한 서버로 마이그레이션할 수 있습니다. 이 자습서에서는 DMS 마이그레이션 작업을 사용하여 샘플 데이터베이스를 Azure Database for MySQL 단일 서버에서 MySQL 유연한 서버(둘 다 버전 5.7 실행)로 온라인으로 마이그레이션합니다.
참고 항목
이제 DMS 온라인 마이그레이션이 일반 공급됩니다. DMS는 MySQL 버전 5.7 및 8.0으로의 마이그레이션을 지원하며 하위 버전 MySQL 서버(v5.6 이상)에서 상위 버전 서버로의 마이그레이션도 지원합니다. 또한 DMS는 지역 간, 리소스 간 그룹 및 구독 간 마이그레이션을 지원하므로 원본 서버에 대해 지정된 것과 다른 대상 서버에 대한 지역, 리소스 그룹 및 구독을 선택할 수 있습니다.
이 자습서에서는 다음을 하는 방법을 알아볼 수 있습니다.
- DMS를 사용하여 더 빠른 데이터 로드를 위한 유연한 서버를 만들기 위한 모범 사례를 구현합니다.
- 대상 유연한 서버를 만들고 구성합니다.
- DMS 인스턴스를 만듭니다.
- DMS에서 MySQL 마이그레이션 프로젝트를 만듭니다.
- DMS를 사용하여 MySQL 스키마를 마이그레이션합니다.
- 마이그레이션을 실행합니다.
- 마이그레이션을 모니터링합니다.
- 마이그레이션 후 단계를 수행합니다.
- 마이그레이션을 수행하기 위한 모범 사례를 구현합니다.
필수 조건
이 자습서를 완료하려면 다음이 필요합니다.
Azure Database for MySQL - 단일 서버(원본 서버)의 기존 인스턴스를 만들거나 사용합니다.
온라인 마이그레이션을 성공적으로 완료하려면 다음 필수 조건이 충족되어야 합니다.
- 선택한 MySQL 명령줄 도구를 사용하여 'log_bin'과 같은 SHOW VARIABLES 명령을 실행하고 원본 서버에서 log_bin을 사용하도록 설정되어 있는지 확인합니다. log_bin이 비활성화된 경우 단일 서버 인스턴스에 대한 읽기 복제본을 만든 다음 삭제합니다. 이 작업은 매개 변수 log_bin을 ON으로 설정한 다음 마이그레이션 작업을 트리거할 수 있습니다.
- 사용자에게 bin 로그를 읽고 적용하기 위한 원본 서버에 대한 "REPLICATION CLIENT" 및 "REPLICATION SLAVE" 사용 권한이 있는지 확인합니다.
- 온라인 마이그레이션을 대상으로 하는 경우 복제본이 변경 내용을 커밋하기 전에 binlog 파일이 제거되지 않도록 원본 서버에서 binlog_expire_logs_seconds 매개 변수를 구성합니다. 2일 이상을 두고 시작하는 것이 좋습니다. 성공한 컷오버 후에 값을 다시 설정할 수 있습니다.
스키마 마이그레이션을 성공적으로 완료하려면 원본 서버에서 마이그레이션을 수행하는 사용자에게 다음 권한이 필요합니다.
- 원본의 서버 수준에서 "SELECT" 권한이 있어야 합니다.
- 뷰를 마이그레이션하는 경우 사용자는 원본 서버에 대한 "SHOW VIEW" 권한 및 대상 서버에 대한 "CREATE VIEW" 권한이 있어야 합니다.
- 트리거를 마이그레이션하는 경우 사용자는 원본 및 대상 서버에 대한 "TRIGGER" 권한이 있어야 합니다. 또한 트리거는 컷오버 중에만 마이그레이션됩니다. 컷오버 후 생성된 트리거가 성공적으로 완료되는 것을 볼 수 있어야 합니다.
- 루틴(프로시저 및/또는 함수)을 마이그레이션하는 경우 대상의 서버 수준에서 "CREATE ROUTINE" 및 "ALTER ROUTINE" 권한이 있어야 합니다.
- 이벤트를 마이그레이션하는 경우 사용자에게 원본 및 대상 서버에 대한 "EVENT" 권한이 있어야 합니다.
- 사용자/로그인을 마이그레이션하는 경우 사용자에게 대상 서버에 대한 "CREATE USER" 권한이 있어야 합니다.
- 이미 존재할 수 있는 테이블을 삭제하기 위해 대상의 서버 수준에서 "DROP" 권한이 있어야 합니다. 예를 들어 마이그레이션을 다시 시도하는 경우 이러한 권한이 필요합니다.
- 외래 키가 있는 테이블을 만들기 위해 대상의 서버 수준에서 "REFERENCES" 권한이 있어야 합니다.
- MySQL 8.0으로 마이그레이션하는 경우 사용자에게 대상 서버에 대한 "SESSION_VARIABLES_ADMIN" 권한이 있어야 합니다.
- 대상 서버 수준에서 "CREATE" 권한이 있어야 합니다.
- 대상 서버 수준에서 "INSERT" 권한이 있어야 합니다.
- 대상 서버 수준에서 "UPDATE" 권한이 있어야 합니다.
- 대상 서버 수준에서 "DELETE" 권한이 있어야 합니다.
제한 사항
마이그레이션을 준비할 때 다음 제한 사항을 고려해야 합니다.
테이블이 아닌 개체를 마이그레이션하는 경우 DMS는 데이터베이스 이름 바꾸기를 지원하지 않습니다.
bin_log를 사용하도록 설정하고 대상 서버로 마이그레이션하는 경우 루틴 및 트리거를 만들 수 있으려면 log_bin_trust_function_creators를 사용하도록 설정해야 합니다.
현재 DMS는 개체에 대한 DEFINER 절 마이그레이션을 지원하지 않습니다. 원본에 정의자가 있는 모든 개체 형식이 삭제되고 마이그레이션 후에는 정의자 절을 지원하고 스키마 마이그레이션 중에 만들어지는 모든 개체에 대한 기본 정의자는 마이그레이션을 실행하는 데 사용되는 로그인으로 설정됩니다.
현재 DMS는 데이터 이동의 일부로 스키마를 마이그레이션하는 것만 지원합니다. 데이터 이동을 위해 아무것도 선택하지 않으면 스키마 마이그레이션이 발생하지 않습니다. 스키마 마이그레이션을 위해 테이블을 선택하면 데이터 이동을 위해 해당 테이블이 선택됩니다.
온라인 마이그레이션 지원은 ROW binlog 형식으로 제한됩니다.
이제 온라인 마이그레이션은 v8.0 또는 v5.7 Azure Database for MySQL 유연한 서버 대상 서버로 마이그레이션할 때 DDL 문 복제를 지원합니다.
- Azure DMS 마이그레이션 활동을 구성할 때 스키마 마이그레이션을 위해 선택한 데이터베이스, 테이블 및 스키마 개체(뷰, 루틴, 트리거)에 대해 문 복제가 지원됩니다. 선택되지 않은 데이터베이스, 테이블, 스키마 개체에 대한 데이터 정의 및 관리 문은 복제되지 않습니다. 마이그레이션할 전체 서버를 선택하면 초기 로드가 완료된 후 원본 서버에 생성된 모든 테이블, 데이터베이스 및 스키마 개체에 대한 명령문이 복제됩니다.
- Azure DMS 문 복제는 다음 명령을 제외하고 여기에 나열된 모든 데이터 정의 문을 지원합니다.
- LOGFILE GROUP 문
- SERVER 문
- SPATIAL REFERENCE SYSTEM 문
- TABLESPACE 문
- Azure DMS 문 복제는 다음 명령을 제외하고 여기에 나열된 모든 데이터 관리 – 계정 관리 문을 지원합니다.
- SET DEFAULT ROLE
- SET PASSWORD
- Azure DMS 문 복제는 다음 명령을 제외하고 여기에 나열된 모든 데이터 관리 – 테이블 유지 관리 문을 지원합니다.
- REPAIR TABLE
- ANALYZE TABLE
- CHECKSUM TABLE
DMS를 사용하여 더 빠른 데이터 로드를 위한 유연한 서버를 만들기 위한 모범 사례
DMS는 지역 간, 리소스 그룹 간 및 구독 간 마이그레이션을 지원하므로 대상 유연한 서버에 적절한 지역, 리소스 그룹 및 구독을 자유롭게 선택할 수 있습니다. 대상 유연한 서버를 만들기 전에 DMS를 사용하여 더 빠른 데이터 로드를 보장하려면 다음 구성 참고 자료를 고려하세요.
다음 테이블의 세부 정보에 따라 원본 단일 서버의 가격 책정 계층 및 VCore를 기반으로 대상 유연한 서버의 컴퓨팅 크기 및 컴퓨팅 계층을 선택합니다.
단일 서버 가격 책정 계층 단일 서버 VCore 유연한 서버 컴퓨팅 크기 유연한 서버 컴퓨팅 계층 기본 1 1 범용 Standard_D16ds_v4 기본 1 2 범용 Standard_D16ds_v4 범용: 1 4 범용 Standard_D16ds_v4 범용: 1 8 범용 Standard_D16ds_v4 범용 16 범용 Standard_D16ds_v4 범용 32 범용 Standard_D32ds_v4 범용 64 범용 Standard_D64ds_v4 메모리 최적화 4 중요 비즈니스용 Standard_E4ds_v4 메모리 최적화 8 중요 비즈니스용 Standard_E8ds_v4 메모리 최적화 16 중요 비즈니스용 Standard_E16ds_v4 메모리 최적화 32 중요 비즈니스용 Standard_E32ds_v4 1 마이그레이션의 경우 더 빠른 마이그레이션을 위해 대상 유연한 서버에 대해 범용 16개 vCore 컴퓨팅을 선택합니다. 마이그레이션이 완료된 후 이 문서의 뒷부분에 있는 마이그레이션 후 작업 수행 섹션의 컴퓨팅 크기 권장 사항에 따라 대상 서버의 원하는 컴퓨팅 크기로 다시 스케일링합니다.
대상 유연한 서버의 MySQL 버전은 원본 단일 서버의 버전보다 크거나 같아야 합니다.
특정 영역에 대상 유연한 서버를 배포할 필요가 없는 경우 가용성 영역 매개 변수의 값을 '기본 설정 없음'으로 설정합니다.
네트워크 연결의 경우 네트워킹 탭에서 원본 단일 서버에 프라이빗 엔드포인트 또는 프라이빗 링크가 구성되어 있으면 프라이빗 액세스를 선택합니다. 그렇지 않으면 퍼블릭 액세스를 선택합니다.
원본 단일 서버에서 대상 유연한 서버로 모든 방화벽 규칙을 복사합니다.
만드는 동안 단일 서버에서 유연한 서버로 모든 이름/값 태그를 복사합니다.
대상 유연한 서버 만들기 및 구성
이 모범 사례를 고려하여 대상 유연한 서버를 만들고 구성합니다.
대상 유연한 서버를 만듭니다. 안내 단계는 빠른 시작 빠른 시작: Azure Portal을 사용하여 Azure Database for MySQL 인스턴스 만들기를 참조하세요.
다음과 같이 새 대상 유연한 서버를 구성합니다.
- 마이그레이션을 수행하는 사용자에게는 다음 권한이 필요합니다.
- 사용자에게 bin 로그를 적용하기 위한 대상 서버에 대한 "REPLICATION_APPLIER" 또는 "BINLOG_ADMIN" 권한이 있는지 확인합니다.
- 사용자에게 대상 서버에 대한 "REPLICATION SLAVE" 권한이 있는지 확인합니다.
- 사용자에게 bin 로그를 읽고 적용하기 위한 원본 서버에 대한 "REPLICATION CLIENT" 및 "REPLICATION SLAVE" 권한이 있는지 확인합니다.
- 대상에 테이블을 만들려면 사용자에게 "CREATE" 권한이 있어야 합니다.
- "DATA DIRECTORY" 또는 "INDEX DIRECTORY" 파티션 옵션을 사용하여 테이블을 마이그레이션하는 경우 사용자에게 "FILE" 권한이 있어야 합니다.
- "UNION" 옵션을 사용하여 테이블을 마이그레이션하는 경우 사용자에게는 MERGE 테이블에 매핑하는 테이블에 대한 "SELECT", "UPDATE" 및 "DELETE" 권한이 있어야 합니다.
- 뷰를 마이그레이션하는 경우 "CREATE VIEW" 권한이 있어야 합니다. 뷰의 콘텐츠에 따라 몇 가지 권한이 필요할 수 있습니다. 자세한 내용은 사용 중인 버전과 관련된 "CREATE VIEW STATEMENT"에 대한 MySQL 문서를 참조하세요.
- 이벤트를 마이그레이션하는 경우 사용자에게 "EVENT" 권한이 있어야 합니다.
- 트리거를 마이그레이션하는 경우 사용자에게 "TRIGGER" 권한이 있어야 합니다.
- 루틴을 마이그레이션하는 경우 사용자에게 "CREATE ROUTINE" 권한이 있어야 합니다.
- 다음과 같이 대상 유연한 서버에서 서버 매개 변수를 구성합니다.
- 원본 서버의 값과 일치하도록 TLS 버전 및 require_secure_transport 서버 매개 변수를 설정합니다.
- 원본 서버의 값과 일치하도록 sql_mode 서버 매개 변수를 설정합니다.
- 원본 서버에서 사용되는 기본값이 아닌 값과 일치하도록 대상 서버의 서버 매개 변수를 구성합니다.
- DMS를 사용할 때 더 빠른 데이터 로드를 보장하려면 설명된 대로 다음 서버 매개 변수를 구성합니다.
- max_allowed_packet – 대량 행으로 인한 연결 문제를 방지하려면 1073741824(1GB)로 설정합니다.
- slow_query_log – 저속 쿼리 로그를 해제하려면 OFF로 설정합니다. 이렇게 하면 데이터를 로드하는 동안 느린 쿼리 로깅으로 인한 오버헤드가 제거됩니다.
- innodb_buffer_pool_size - Azure Database for MySQL 서버에 대한 컴퓨팅을 스케일 업해야 늘릴 수 있습니다. 마이그레이션 중 포털의 가격 책정 계층에서 서버를 64개의 vCore 범용 SKU로 스케일 업하여 innodb_buffer_pool_size를 늘립니다.
- innodb_io_capacity & innodb_io_capacity_max - Azure Portal의 서버 매개 변수에서 9000으로 변경하여 마이그레이션 속도를 최적화하기 위해 IO 사용률을 향상시킵니다.
- innodb_write_io_threads - 마이그레이션의 속도를 개선하기 위해 Azure Portal의 서버 매개 변수에서 4로 변경합니다.
- 원본 서버의 복제본과 일치하도록 대상 서버에서 복제본을 구성합니다.
- 원본 단일 서버에서 대상 유연한 서버로 다음 서버 관리 기능을 복제합니다.
- 역할 할당, 역할, 할당 거부, 클래식 관리자, 액세스 제어(IAM)
- 잠금(읽기 전용 및 삭제)
- 경고
- 작업
- Resource Health 경고
- 마이그레이션을 수행하는 사용자에게는 다음 권한이 필요합니다.
DMS 설정
대상 유연한 서버를 배포하고 구성한 후에는 단일 서버를 유연한 서버로 마이그레이션하도록 DMS를 설정해야 합니다.
리소스 공급자 등록
Microsoft.DataMigration 리소스 공급자를 등록하려면 다음 단계를 수행합니다.
첫 번째 DMS 인스턴스를 만들기 전에 Azure Portal에 로그인한 다음, 구독을 검색하고 선택합니다.
DMS 인스턴스를 만드는 데 사용할 구독을 선택한 다음, 리소스 공급자를 선택합니다.
"Migration"이라는 용어를 검색한 다음, Microsoft.DataMigration에 대해 등록을 선택합니다.
DMS(Database Migration Service) 인스턴스 만들기
Azure Portal에서 + 리소스 만들기를 선택하고, "Azure Database Migration Service"라는 용어를 검색한 다음, 드롭다운 목록에서 Azure Database Migration Service를 선택합니다.
Azure Database Migration Service 화면에서 만들기를 선택합니다.
마이그레이션 시나리오 및 Database Migration Service 선택 페이지의 마이그레이션 시나리오에서 원본 서버 유형으로 Azure Database for MySQL - 단일 서버를 선택한 다음, 대상 서버 유형으로 Azure Database for MySQL을 선택한 다음, 선택을 선택합니다.
마이그레이션 서비스 만들기 페이지에서 기본 사항 탭의 프로젝트 세부 정보 아래에서 적절한 구독을 선택한 다음, 기존 리소스 그룹을 선택하거나 새 리소스 그룹을 만듭니다.
인스턴스 세부 정보에서 서비스의 이름을 지정하고, 지역을 선택한 다음, Azure가 서비스 모드로 선택되었는지 확인합니다.
가격 책정 계층 오른쪽에서 계층 구성을 선택합니다.
구성 페이지에서 DMS 인스턴스에 대해 4개 vCore가 있는 프리미엄 가격 책정 계층을 선택한 다음, 적용을 선택합니다.
DMS 프리미엄 서비스 생성 날짜로부터 요금이 발생하기 전까지 6개월(183일)간 무상으로 DMS 프리미엄 4 vCore를 사용할 수 있습니다. DMS 비용 및 가격 책정 계층에 대한 자세한 내용은 가격 책정 페이지를 참조하세요.
다음으로, 원본 단일 서버 및 대상 유연한 서버에 대한 액세스 권한을 DMS 인스턴스에 제공할 VNet을 지정해야 합니다.
마이그레이션 서비스 만들기 페이지에서 다음: 네트워킹>>을 선택합니다.
네트워킹 탭의 목록에서 기존 VNet을 선택하거나 만들 새 VNet의 이름을 입력한 다음, 검토 + 만들기를 선택합니다.
자세한 내용은 Azure Portal을 사용하여 가상 네트워크 만들기를 참조하세요.
[!IMPORTANT]
vNet은 원본 단일 서버와 대상 유연한 서버 모두에 액세스하도록 구성되어야 하므로 다음을 수행해야 합니다.vNet을 통해 Azure Database Migration Service가 원본 및 대상 데이터베이스에 액세스하도록 허용하려면 원본 및 대상 Azure Database for MySQL에 대한 서버 수준 방화벽 규칙을 만들거나 VNET 서비스 엔드포인트를 구성합니다.
VNet NSG(Network Security Group) 규칙이 ServiceBus, Storage 및 AzureMonitor용 ServiceTag의 아웃바운드 포트 443을 차단하지 않는지 확인합니다. Azure VNet NSG 트래픽 필터링에 대한 자세한 내용은 네트워크 보안 그룹을 사용하여 네트워크 트래픽 필터링을 참조하세요.
참고 항목
서비스에 태그를 추가하려면 다음: 태그를 선택하여 태그 탭으로 이동합니다. 서비스에 태그를 추가하는 것은 선택 사항입니다.
검토 + 만들기 탭으로 이동하고, 구성을 검토하고, 조건을 확인한 다음, 만들기를 선택합니다.
이제 DMS 인스턴스 배포가 시작됩니다. 배포 진행 중이라는 메시지가 몇 분 동안 표시된 후 메시지가 배포가 완료됨으로 변경됩니다.
리소스로 이동을 선택합니다.
리소스 개요 페이지에서 DMS 인스턴스의 IP 주소를 식별하고 DMS 인스턴스의 IP 주소 목록을 허용하는 원본 단일 서버 및 대상 유연한 서버에 대한 방화벽 규칙을 만듭니다.
마이그레이션 프로젝트 생성
마이그레이션 프로젝트를 만들려면 다음 단계를 수행합니다.
Azure Portal에서 모든 서비스를 선택하고 Azure Database Migration Service를 검색한 다음, Azure Database Migration Services를 선택합니다.
검색 결과에서 만든 DMS 인스턴스 선택한 다음, + 새 마이그레이션 프로젝트를 선택합니다.
새 마이그레이션 프로젝트 페이지에서 프로젝트의 이름을 지정하고, 원본 서버 유형 선택 상자에서 Azure Database For MySQL - 단일 서버를 선택하고, 대상 서버 유형 선택 상자에서 Azure Database For MySQL - 유연한 서버을 선택하고, 마이그레이션 작업 유형 선택 상자에서 온라인 데이터 마이그레이션을 선택한 다음, 작업 만들기 및 실행을 선택합니다.
참고 항목
마이그레이션 작업 유형으로 프로젝트만 만들기를 선택하면 마이그레이션 프로젝트만 생성됩니다. 나중에 마이그레이션 프로젝트를 실행할 수 있습니다.
마이그레이션 프로젝트 구성
DMS 마이그레이션 프로젝트를 구성하려면 다음 단계를 수행합니다.
원본 선택 화면에서 구독, 위치 및 리소스 그룹을 기준으로 서버를 찾습니다. 사용자 이름이 자동으로 채워지며 원본 서버의 암호를 입력합니다.
다음: 대상 선택>>을 선택한 다음 대상 선택 화면에서 구독, 위치 및 리소스 그룹을 기준으로 서버를 찾습니다. 사용자 이름은 자동으로 채워지며 대상 유연한 서버의 암호를 입력합니다.
다음: 데이터베이스 선택>>을 선택한 다음 데이터베이스 선택 탭의 서버 마이그레이션 옵션에서 해당 가능한 모든 데이터베이스 마이그레이션을 선택하거나 데이터베이스 선택에서 마이그레이션하려는 서버 개체를 선택합니다.
참고 항목
이제 선택하면 해당되는 모든 데이터베이스 마이그레이션 옵션이 있으며, 이 옵션은 사용자가 만든 모든 데이터베이스와 테이블을 마이그레이션합니다. Azure Database for MySQL - 유연한 서버는 대/소문자 혼합 데이터베이스를 지원하지 않으므로 원본의 대/소문자 혼합 데이터베이스는 온라인 마이그레이션에 포함되지 않습니다.
데이터베이스 선택 섹션의 원본 데이터베이스에서 마이그레이션할 데이터베이스를 선택합니다.
지정한 데이터베이스의 테이블이 아닌 개체는 마이그레이션되지만 선택하지 않은 항목은 건너뜁니다. 원본 및 대상 서버에서 이름이 일치하는 원본 및 대상 데이터베이스만 선택할 수 있습니다.
대상 서버에 존재하지 않는 원본 서버의 데이터베이스를 선택하면 대상 서버에 만들어집니다.
다음: 테이블 선택>>을 선택하여 테이블 선택 탭으로 이동합니다.
탭이 채워지기 전에 DMS는 원본 및 대상의 선택한 데이터베이스에서 테이블을 가져온 다음, 테이블이 있고 데이터가 포함되어 있는지 여부를 확인합니다.
마이그레이션할 테이블을 선택합니다.
선택한 원본 테이블이 대상 서버에 없는 경우 온라인 마이그레이션 프로세스는 테이블 스키마와 데이터가 대상 서버로 마이그레이션되도록 합니다.
DMS는 입력의 유효성을 검사하고 유효성 검사가 통과되면 마이그레이션을 시작할 수 있습니다.
스키마 마이그레이션을 구성한 후 마이그레이션 검토 및 시작을 선택합니다.
참고 항목
실패한 마이그레이션 문제를 해결하려는 경우 마이그레이션 설정 구성 탭으로 이동하면 됩니다.
요약 탭의 작업 이름 텍스트 상자에서 마이그레이션 작업의 이름을 지정한 다음, 요약을 검토하여 원본 및 대상 세부 정보가 앞에서 지정한 내용과 일치하는지 확인합니다.
마이그레이션 시작을 선택합니다.
마이그레이션 작업 창이 나타나고, 작업 상태는 초기화 중입니다. 테이블 마이그레이션이 시작되면 상태가 실행 중으로 바뀝니다.
마이그레이션 모니터링
초기 로드 작업이 완료되면 초기 로드 탭으로 이동하여 완료 상태 및 완료된 테이블 수를 확인합니다.
초기 로드 작업이 완료되면 데이터 변경 내용 복제 탭으로 자동으로 이동합니다. 화면이 30초마다 자동으로 새로 고쳐지므로 마이그레이션 진행률을 모니터링할 수 있습니다.
새로 고침을 선택하여 디스플레이를 업데이트하고 필요한 경우 원본 뒤의 시간(초)을 봅니다.
원본 뒤의 초를 모니터링하고 0에 가까워지면 마이그레이션 작업 화면 맨 위에 있는 컷오버 시작 메뉴 탭으로 이동하여 컷오버를 시작합니다.
컷오버를 수행할 준비가 되기 전에 컷오버 창의 단계를 따릅니다.
모든 단계를 완료한 후 확인을 선택한 다음 적용을 선택합니다.
마이그레이션 후 작업 수행
마이그레이션이 완료되면 다음 마이그레이션 후 작업을 완료해야 합니다.
대상 데이터베이스에 애플리케이션의 온전성 테스트를 수행하여 마이그레이션을 인증합니다.
새 유연한 서버를 가리키도록 연결 문자열 업데이트합니다.
애플리케이션 연속성을 보장한 후 원본 단일 서버를 삭제합니다.
더 빠른 마이그레이션을 위해 대상 유연한 서버를 확장한 경우 다음 표의 세부 정보에 따라 원본 단일 서버의 가격 책정 계층 및 VCore를 기준으로 유연한 서버의 컴퓨팅 크기와 컴퓨팅 계층을 선택하여 다시 규모를 축소합니다.
단일 서버 가격 책정 계층 단일 서버 VCore 유연한 서버 컴퓨팅 크기 유연한 서버 컴퓨팅 계층 Basic 1 버스트 가능 Standard_B1s Basic 2 버스트 가능 Standard_B2s 범용 4 범용 Standard_D4ds_v4 범용 8 범용 Standard_D8ds_v4 DMS 리소스를 정리한 다음 단계를 수행합니다.
Azure Portal에서 모든 서비스를 선택하고 Azure Database Migration Service를 검색한 다음, Azure Database Migration Services를 선택합니다.
검색 결과에서 마이그레이션 서비스 인스턴스를 선택하고 서비스 삭제를 선택합니다.
확인 대화 상자의 TYPE THE DATABASE MIGRATION SERVICE NAME 텍스트 상자에 인스턴스 이름을 입력한 다음 삭제를 선택합니다.
마이그레이션 모범 사례
마이그레이션을 수행할 때는 다음 모범 사례를 고려해야 합니다.
검색 및 평가의 일환으로 서버 SKU, CPU 사용량, 스토리지, 데이터베이스 크기 및 확장 사용량을 마이그레이션에 도움이 되는 중요한 데이터의 일부로 사용합니다.
프로덕션용으로 마이그레이션하기 전에 테스트 마이그레이션을 수행합니다.
- 테스트 마이그레이션은 애플리케이션 테스트를 포함하여 데이터베이스 마이그레이션의 모든 측면을 다루는 데 중요합니다. 가장 좋은 방법은 먼저 테스트 목적으로 마이그레이션을 완전히 실행하는 것입니다. 새로 시작된 마이그레이션이 최소한의 지연으로 데이터 변경 내용 복제 단계로 진입한 후에는 테스트 워크로드를 실행하기 위해 유연한 서버 대상만 사용합니다. 예상된 성능 및 결과를 보장하기 위해 애플리케이션 테스트에 해당 대상을 사용합니다. 더 높은 MySQL 버전으로 마이그레이션하는 경우 애플리케이션 호환성을 테스트합니다.
- 테스트가 완료되면 프로덕션 데이터베이스를 마이그레이션할 수 있습니다. 이 시점에서 프로덕션 마이그레이션의 날짜와 시간을 완료해야 합니다. 이상적으로는 이 시점에 애플리케이션 사용량이 적습니다. 참여해야 하는 모든 이해 관계자들이 작업을 시작할 수 있는 준비 상태가 되어야 합니다. 프로덕션 마이그레이션에는 면밀한 모니터링이 필요합니다. 온라인 마이그레이션의 경우 데이터 손실을 방지하기 위해 컷오버를 수행하기 전에 복제를 완료해야 합니다.
모든 종속 애플리케이션을 리디렉션하여 새 기본 데이터베이스에 액세스하고 소스 서버를 읽기 전용으로 만듭니다. 그런 다음 프로덕션 사용을 위한 애플리케이션을 엽니다.
애플리케이션이 유연한 서버 대상에서 실행되기 시작되면 데이터베이스 성능을 면밀히 모니터링하여 성능 조정이 필요한지 확인합니다.