このトピックでは、Huawei Cloud RDS for MySQL インスタンスから ApsaraDB RDS for MySQL インスタンスにデータを移行する方法と、データ移行に関する重要な使用上の注意について説明します。
前提条件
ソースと宛先 | 要件 | |
ソース |
| |
宛先 | ApsaraDB RDS for MySQL インスタンス | |
制限事項
スキーマ移行方式はイベントをサポートしていません。
Data Transmission Service (DTS) は、MySQL の FLOAT 型と DOUBLE 型の浮動小数点値を
round(column,precision)関数を呼び出して読み取ります。列のデータ型で値の精度が指定されていない場合、FLOAT 型の値の精度は 38 ビット、DOUBLE 型の値の精度は 308 ビットになります。DTS によって移行する必要がある FLOAT 型と DOUBLE 型の値の精度がビジネス要件を満たしているかどうかを確認する必要があります。オブジェクトでオブジェクト名マッピング機能を使用すると、そのオブジェクトに依存する他のオブジェクトの移行に失敗する可能性があります。
増分移行の制限事項は次のとおりです。
Huawei Cloud RDS for MySQL インスタンスでバイナリログ機能を有効にする必要があります。
ソースデータベースの binlog_format パラメーターを row に設定する必要があります。
Huawei Cloud RDS for MySQL インスタンスが MySQL 5.6 以降を実行している場合、インスタンスの binlog_row_image パラメーターを full に設定する必要があります。
増分データ移行中に Huawei Cloud RDS for MySQL インスタンスでクロスホスト移行または再構築が実行されると、バイナリログファイルの ID が乱れ、移行された増分データが失われる可能性があります。
説明Huawei Cloud RDS for MySQL インスタンスのパラメーターを変更する方法の詳細については、「Relational Database Service」をご参照ください。
使用上の注意
ソースインスタンスにアクセス制御ポリシーを設定した場合、移行タスクを設定する前に、DTS サーバーの CIDR ブロックをソースインスタンスのセキュリティ設定に追加する必要があります。
DTS は、7 日以内に実行された異常な移行タスクを自動的に再開しようとします。この場合、Huawei Cloud RDS for MySQL インスタンス上のデータが、ApsaraDB RDS for MySQL インスタンスに書き込まれたサービスデータを上書きする可能性があります。移行タスクが完了したら、
revoke文を実行して、ApsaraDB RDS for MySQL インスタンスへのアクセスに使用される DTS アカウントの書き込み権限を取り消す必要があります。
手順
必要なリージョンのデータ移行タスクページに移動します。
DTS コンソールにログインします。
左側のナビゲーションウィンドウで、データの移行 をクリックします。
上部のナビゲーションバーで、必要なリージョンを選択します。
[タスクの作成] をクリックします。表示されたページで、ソースインスタンスと宛先インスタンスを設定します。
セクション
パラメーター
説明
ソースデータベース
データベースタイプ
ソースインスタンスのタイプ。この例では、[MySQL] が選択されています。
アクセス方法
ソースインスタンスが DTS にアクセスするために使用する方法。この例では、[パブリック IP アドレス] が選択されています。
インスタンスリージョン
ソースインスタンスのリージョン。必要に応じてリージョンを選択できます。この例では、[中国 (杭州)] が選択されています。
ドメイン名または IP
ソースインスタンスのパブリックエンドポイント。
ポート
ソースインスタンスのポート番号。
データベースアカウント
ソースインスタンスの特権アカウントのユーザー名。
データベースパスワード
ソースインスタンスの特権アカウントのパスワード。
ターゲットデータベース
データベースタイプ
宛先インスタンスのタイプ。この例では、[MySQL] が選択されています。
アクセス方法
宛先インスタンスが DTS にアクセスするために使用する方法。この例では、[Alibaba Cloud インスタンス] が選択されています。
インスタンスリージョン
宛先インスタンスのリージョン。
Alibaba Cloud アカウント間でのデータ複製
この例では、× が選択されています。
RDS インスタンス ID
宛先インスタンスの ID。
データベースアカウント
宛先インスタンスの特権アカウントのユーザー名。
データベースパスワード
宛先インスタンスの特権アカウントのパスワード。
接続方法
ソースデータベースインスタンスへの接続を暗号化するかどうかを指定します。ビジネス要件に基づいて、[非暗号化] または [SSL 暗号化] を選択します。このパラメーターを [SSL 暗号化] に設定する場合は、DTS タスクを設定する前に、ApsaraDB RDS for MySQL インスタンスで SSL 暗号化を有効にする必要があります。詳細については、「クラウド証明書を使用して SSL 暗号化を有効にする」をご参照ください。
設定が完了したら、[接続テストと次へ] をクリックします。[DTS サーバーアクセス承認] ダイアログボックスで、[接続テストと次へ] をクリックします。
[タスクオブジェクトと詳細設定の設定] ステップで、[移行タイプ] パラメーターを設定します。
説明データ整合性を確保するため、[スキーマ移行]、[完全なデータ移行]、および [増分データ移行] を選択することをお勧めします。
[ソースオブジェクト] セクションで、移行するデータベースを選択し、
アイコンをクリックして、選択したデータベースを [選択したオブジェクト] セクションに移動します。[次へ: 詳細設定] をクリックします。表示されたページで、デフォルトのパラメーター設定を保持します。
移行条件を満たすアカウント (パスワードと権限を含む) をソースデータベースからターゲットデータベースに移行できます。詳細については、「データベースアカウントの移行」をご参照ください。
[次へ: タスク設定の保存と事前チェック] をクリックします。事前チェックが完了するまで待ちます。
説明事前チェックが失敗した場合は、指示に基づいて問題を解決し、事前チェックを再度実行してください。
[次へ: 購入] をクリックします。次に、[購入] ページで [Data Transmission (従量課金) サービス規約] を選択し、[購入して開始] をクリックします。
増分データ移行を選択し、増分データ移行中にソースインスタンスにデータを書き込むと、DTS は増分データを宛先インスタンスに同期します。移行タスクは自動的に停止しません。データのみを移行する場合は、増分データ移行中にソースインスタンスと宛先インスタンスの間で目的のデータ整合性が達成されたときに、ソースデータベースへのデータ書き込みを数分間停止することをお勧めします。同じレベルのデータ整合性が再び達成されたら、移行タスクを停止し、ワークロードを宛先インスタンスに切り替えます。
説明スキーマ移行と完全なデータ移行は無料で提供されます。増分データ移行を使用する場合、リンク仕様に基づいて時間単位で課金されます。
移行タスクが完了するまで待ちます。