마이그레이션 방식 및 도구 결정
지금까지 마이그레이션 개념, 고려 사항 및 도구에 대해 알아보았으므로 이제 시나리오에 가장 적합한 도구와 접근 방식을 결정하는 방법을 이해해 보겠습니다. VM 및 온-프레미스의 모든 마이그레이션에 Azure MySQL 가져오기 CLI를 사용하고, 다른 모든 마이그레이션에는 DMS를 사용하는 것이 좋습니다. 다른 모든 도구는 처음 두 도구가 마이그레이션을 지원할 수 없는 경우 사용할 수 있는 커뮤니티 도구입니다. 다음 표는 목표에 따라 도구를 선택하는 데 도움이 됩니다.
목표 | 도구 | 설명 | 장점 | 단점 |
---|---|---|---|---|
온-프레미스 서버 또는 VM에서의 빠르고 간단한 마이그레이션 경로 | Azure Database for MySQL Import CLI | 원본 데이터베이스의 사용자가 제공한 물리적 백업 파일(Percona XtraBackup을 사용하여 생성)을 대상 MySQL 유연한 서버로 복원합니다. | Microsoft 마이그레이션 도구 간단한 도구(단일 CLI 명령) 대규모 워크로드의 빠른 물리적 마이그레이션 라이브 연결이 필요하지 않습니다. 복제를 설정하여 온라인 마이그레이션을 준비할 수 있습니다. | Percona Xtrabackup 백업 파일이 필요한 경우에만 온-프레미스 및 VM에서 마이그레이션 |
AWS RDS 및 Aurora를 포함하여 어디서나 호스트되는 모든 원본에서 빠른 온라인 및 오프라인 마이그레이션 | Azure DMS(Database Migration Service) | 또한 가동 중지 시간을 최소화하면서 여러 데이터베이스 소스에서 Azure 데이터 플랫폼으로 원활하게 마이그레이션할 수 있도록 설계된 완벽하게 관리되는 서비스입니다(온라인 마이그레이션). | Microsoft 마이그레이션 도구 오프라인 마이그레이션과 온라인 마이그레이션이 모두 지원됩니다. UI 기반 반복 가능한 마이그레이션 템플릿 데이터, 스키마 및 사용자 계정과 권한의 마이그레이션을 지원합니다. | 라이브 연결이 필요합니다. |
MySQL 커뮤니티 도구를 사용한 대규모 워크로드 마이그레이션 | mydumper 및 myloader |
명령줄 도구를 다운로드하고 설치합니다. 데이터를 원본에서 대상으로 병렬로 이동합니다. 고속 효과를 달성할 수 있습니다. | 병렬 내보내기 및 가져오기로 인한 대규모 워크로드에 대한 빠른 마이그레이션 | 제한 데이터 가져오기가 필요할 수 있습니다. |
MySQL 네이티브 도구를 사용하는 온라인 마이그레이션 | binlog |
원본에서 대상으로 MySQL 이진 로그 복제를 설정합니다. 실시간으로 변경 내용을 복제합니다. 복제 지연이 0이면 데이터베이스를 전환합니다. | 읽기 복제본을 구현하는 데도 사용되는 기본 제공 복제 메커니즘 | 더 많은 수동 및 고급 기능 데이터를 저장하고 처리하는 데 더 많은 리소스가 필요합니다. |
고도로 사용자 지정된 오프라인 마이그레이션 | mysqldump |
원본 데이터베이스의 전체(또는 일부)를 SQL 문으로 내보내고 대상 서버에서 실행하여 원본의 데이터를 마이그레이션합니다. | 매우 유연한 기본 제공 도구 개체를 선택적으로 내보내고 가져옵니다. | 수동. 대규모 워크로드의 경우 성능이 저하되었습니다. |
반자동 오프라인 마이그레이션 | MySQL Workbench | UI 내보내기 및 가져오기 도구를 다운로드하여 설치합니다. | 반자동, UI 기반 내보내기 및 가져오기 | 일반적인 스위치 및 옵션만 지원합니다. |