移行のアプローチとツールを決定する
移行の概念、考慮事項、ツールについて学習したので、シナリオに最適なツールとアプローチを決定する方法を理解しましょう。 VM やオンプレミスからのすべての移行には Azure MySQL Import CLI を、それ以外のすべてには DMS をお勧めします。 他のツールはすべてコミュニティ ツールであり、最初に挙げた 2 つのツールでは移行をサポートできない場合に使用することができます。 次の表は、目的に基づいてツールを選択するのに役立ちます。
目的 | ツール | 説明 | プロ | 短所 |
---|---|---|---|---|
オンプレミス サーバーまたは VM からの高速でシンプルな移行パス | Azure Database for MySQL Import CLI | ソース データベースのユーザー指定の物理バックアップ ファイル (Percona XtraBackup を使用して取得) を、ターゲットの MySQL フレキシブル サーバーに復元します | Microsoft の移行ツール。 シンプルなツール (単一の CLI コマンド)。 大規模なワークロードの高速な物理移行。 ライブ接続が不要。 レプリケーションを設定することで、オンライン移行の準備が可能。 | オンプレミスや VM からの移行のみ (Percona Xtrabackup バックアップ ファイルが必要なため)。 |
AWS RDS や Aurora など、あらゆる場所でホストされている、あらゆるソースからの高速なオンラインおよびオフライン移行 | Azure Database Migration Service (DMS) | 複数のデータベース ソースから Azure データ プラットフォームへのシームレスな移行を、最小限のダウンタイムで実現できるように設計されたフル マネージド サービスです (オンライン移行)。 | Microsoft の移行ツール。 オフラインとオンラインの両方の移行がサポートされます。 UI ベース。 繰り返し可能な移行テンプレート。 データ、スキーマ、ユーザー アカウント、特権の移行をサポート。 | ライブ接続が必要。 |
MySQL コミュニティ ツールを使用した大規模なワークロードの移行 | mydumper および myloader |
コマンドライン ツールをダウンロードしてインストールします。 ソースからターゲットにデータを並列に移動します。 高速を実現可能。 | 並列エクスポートおよびインポートによる大規模なワークロードの高速移行。 | データ インポートでスロットリングが必要になる場合あり。 |
MySQL ネイティブ ツールを使用したオンライン移行 | binlog |
ソースからターゲットへの MySQL バイナリ ログ レプリケーションを設定します。 変更をリアルタイムでレプリケートします。 レプリケーションの遅延がゼロになると、データベースを切り替えます。 | 組み込みのレプリケーション メカニズム。読み取りレプリカの実装にも使用。 | より多くの手動かつ詳細な作業。 データの格納と処理により多くのリソースが必要 |
高度にカスタマイズされたオフライン移行 | mysqldump |
ソース データベースのすべて (または一部) を SQL ステートメントとしてエクスポートし、ターゲット サーバー内で実行してソースのデータを移行します。 | 柔軟性の高い組み込みツール。 オブジェクトを選択的にエクスポートおよびインポート。 | [手動] 。 大規模なワークロードではパフォーマンスが低下。 |
半自動化されたオフライン移行 | MySQL Workbench | UI エクスポートおよびインポート ツールをダウンロードしてインストールします。 | 半自動化。UI ベースのエクスポートおよびインポート | 一般的なスイッチとオプションのみをサポート |