データベースの移行は、複雑で時間のかかるプロセスです。移行中は、データのセキュリティと整合性を考慮する必要があります。また、サービス中断の影響を評価する必要もあります。データ移行タスクを迅速かつスムーズに完了させるために、Alibaba Cloud Data Transmission Service (DTS) を使用できます。DTS は、高速で完全なデータ伝送を保証し、アプリケーションのダウンタイムを数分に短縮できます。これにより、移行後のビジネス開発に集中できます。または、自己管理データベースの完全バックアップを実行し、そのバックアップファイルを使用してデータベースを ApsaraDB RDS for MySQL インスタンスに回復することもできます。これにより、データベースを間接的にクラウドに移行できます。
課金
ApsaraDB RDS for MySQL インスタンスを作成すると、インスタンスタイプ料金とストレージ料金が発生します。これらの料金は、インスタンスの課金方法、シリーズ、インスタンスタイプ、ストレージタイプ、ストレージ容量などのパラメーターに基づいています。詳細については、「ApsaraDB RDS for MySQL の課金項目」をご参照ください。
(方法 1: DTS を使用して ApsaraDB RDS for MySQL インスタンスに移行する) DTS を使用してデータ移行を行う場合、リンク構成料金が発生します。これらの料金は、タスク期間やリンク仕様などのパラメーターに基づいています。詳細については、「Data Transmission Service (DTS) の課金項目」をご参照ください。
(方法 2: 完全バックアップを使用して ApsaraDB RDS for MySQL インスタンスに回復する) 自己管理データベースの完全バックアップを Object Storage Service (OSS) にアップロードすると、ストレージ料金が発生します。詳細については、「OSS ストレージ料金」をご参照ください。
準備
最初の 2 つのチュートリアルで作成した ApsaraDB RDS for MySQL インスタンスを使用できます。インスタンスがリリースされている場合は、別の ApsaraDB RDS for MySQL インスタンスを購入し、dbuser という名前の特権アカウントを作成する必要があります。詳細な手順については、「ステップ 1: ApsaraDB RDS for MySQL インスタンスを作成し、データベースを構成する」をご参照ください。
方法 1: DTS を使用して ApsaraDB RDS for MySQL インスタンスに移行する
Data Transmission Service (DTS) は、Alibaba Cloud が提供するリアルタイムデータストリームサービスです。リレーショナルデータベース (RDBMS)、NoSQL データベース、オンライン分析処理 (OLAP) システムなどのデータソース間のデータ対話をサポートします。DTS は、データ同期、移行、サブスクリプション、統合、および処理を統合して、安全でスケーラブル、かつ高可用性のデータアーキテクチャを構築するのに役立ちます。
このチュートリアルでは、ECS インスタンス上の自己管理データベースを例として使用し、DTS データ移行タスクを作成および構成して、自己管理データベースを ApsaraDB RDS for MySQL インスタンスにスムーズに移行する方法を示します。
自己管理データベースを ApsaraDB RDS for MySQL に移行する場合、ECS インスタンスと RDS インスタンスが同じリージョンと VPC にあることを確認してください。これにより、インスタンスが内部ネットワークアクセスの条件を満たし、データ移行プロセスがより速く、より安定します。
DTS を使用したデータ移行の制限事項と重要な注意事項については、「自己管理 MySQL データベースから ApsaraDB RDS for MySQL インスタンスへの移行」をご参照ください。
Data Management (DMS) コンソールにログインします。
上部のメニューバーで、 を選択します。上部のメニューバーが表示されない場合は、右上隅の
アイコンをクリックして [シンプルモード] を終了します。[タスクの作成] をクリックして、タスク構成ページに移動します。
ソースデータベースとターゲットデータベースを構成します。
ソースデータベースのパラメーターを構成する
このチュートリアルでは、ソースデータベースは ECS インスタンス上の自己管理データベースです。
[データベースタイプ]: [MySQL] を選択します。
[接続タイプ]: [ECS 上の自己管理データベース] を選択します。自己管理データベースは、ECS にデプロイされた自己管理データベースまたはオンプレミスにデプロイされた自己管理データベースに分類できます。DTS は、さまざまなシナリオに対応する複数の接続タイプを提供し、さまざまなデータ移行要件をサポートします。詳細については、「各接続タイプの準備」をご参照ください:
自己管理データベースのデプロイ場所
インターネットアクセス
DTS 接続タイプ (移行タスク構成と同じ)
ECS (クラウド上)
両方利用可能
ECS 上の自己管理データベース
オンプレミス (クラウド上ではない)
パブリック IP アドレスを持つ
パブリック IP
パブリック IP アドレスを持たない
Cloud Enterprise Network (CEN)、データベースゲートウェイ (DG)、専用線/VPN Gateway/Smart Access Gateway
[インスタンスリージョン]: ECS インスタンスが配置されているリージョンを選択します。
[ECS インスタンス ID]: ドロップダウンリストから、移行する ECS インスタンスを選択します。
[ポート]: デフォルトは
3306です。[データベースアカウント] と [データベースパスワード]: ECS インスタンス上の自己管理データベースのアカウントとパスワードを入力します。アカウントには、データ移行に必要な権限が必要です。アカウントがない場合は、アカウントを作成して必要な権限を付与します。詳細な手順については、「自己管理 MySQL データベースのアカウントを作成する」をご参照ください。
[接続方法]: 自己管理データベースで Secure Sockets Layer (SSL) 暗号化が有効になっていない場合は、[非暗号化接続] を選択します。SSL 暗号化が有効になっている場合は、[SSL 暗号化接続] を選択し、[CA 証明書] と [CA キー] をアップロードします。
ターゲットデータベースのパラメーターを構成する
このチュートリアルでは、ターゲットデータベースは ApsaraDB RDS for MySQL インスタンスです。
[データベースタイプ]: [MySQL] を選択します。
[接続タイプ]: [クラウドインスタンス] を選択します。
[インスタンスリージョン]: RDS インスタンスが配置されているリージョンを選択します。このチュートリアルでは、例として [中国 (杭州)] を使用します。
[RDS インスタンス ID]: ドロップダウンリストから、[準備] セクションで作成した ApsaraDB RDS for MySQL インスタンスの ID を選択します。
[データベースアカウント] と [データベースパスワード]: ApsaraDB RDS for MySQL インスタンスの特権アカウントとパスワードを入力します。このチュートリアルでは、例として
dbuserとユーザー定義のパスワードを使用します。[接続方法]: このチュートリアルでは、例として [非暗号化接続] を使用します。[SSL 暗号化接続] を選択した場合は、まず ApsaraDB RDS for MySQL インスタンスの SSL 暗号化機能を有効にする必要があります。詳細については、「クラウド証明書を使用して SSL 暗号化を迅速に有効にする」をご参照ください。
[接続をテストして続行] をクリックします。DTS は自動的に DTS セキュリティグループを ECS インスタンスに追加し、DTS サーバーの IP アドレスを RDS インスタンスのホワイトリストに追加します。これにより、DTS は ECS および RDS インスタンスにアクセスできるようになります。
タスクオブジェクトを構成します。
[移行タイプ] を選択します。スムーズな移行のために、[スキーマ移行]、[完全移行]、および [増分移行] チェックボックスを選択します。3 つの移行タイプの違いについては、「移行タイプの説明」をご参照ください。

[ソースデータベースオブジェクト] セクションで、移行するデータベース (このチュートリアルでは例として
wordpressdbを使用) を選択します。
アイコンをクリックして [選択したオブジェクト] セクションに移動します。次に、[次へ: 詳細構成] をクリックします。
詳細構成ページで、デフォルトのパラメーター設定を使用し、[次へ: データ検証] をクリックします。
[データ検証] ページで、[完全データ検証]、[増分データ検証]、および [スキーマ検証] チェックボックスを選択します。次に、[次へ: タスクを保存して事前チェック] をクリックします。3 つのデータ検証方法の詳細については、「データ検証とは」をご参照ください。
[事前チェック] が 100% の成功率で合格したら、[次へ: 購入] をクリックします。
データ移行インスタンスの [リンク仕様] を選択します。このチュートリアルでは、例として [small] 仕様を使用します。[Data Transmission Service (Pay-As-You-Go) 利用規約] を読んで選択します。次に、[購入して開始] をクリックします。
移行タスクが開始されます。移行タスク ID をクリックして進行状況を表示できます。次のインターフェイスは、既存データが移行され、増分データがリアルタイムで同期されていることを示します。
次に、完全データと増分データの両方の移行結果を検証できます。データが正しいことを確認したら、サービストラフィックを ApsaraDB RDS for MySQL インスタンスに切り替えます。これで、自己管理データベースから ApsaraDB RDS for MySQL インスタンスへの移行は完了です。
方法 2: 完全バックアップを使用して ApsaraDB RDS for MySQL インスタンスに回復する
ApsaraDB RDS for MySQL は、完全バックアップのインポートと回復をサポートしています。Percona XtraBackup と MySQL Backup Helper ツールを使用して、自己管理データベースの完全バックアップを実行し、OSS にアップロードできます。次に、OSS から ApsaraDB RDS コンソールに完全バックアップファイルをインポートし、データベース回復機能を使用してデータベースを新しいインスタンスに回復できます。この方法により、自己管理データベースを ApsaraDB RDS for MySQL インスタンスに間接的に移行します。詳細な手順については、「自己管理 MySQL 5.7 または 8.0 データベースのクラウドへの完全移行を実行する」をご参照ください。