本記事では、データ移行サービスを使用して、PolarDB-X 2.0データベースのデータをOceanBaseデータベースのMySQL互換モードテナントに移行する方法について説明します。
前提条件
ソース側のPolarDB-X 2.0インスタンスとターゲット側のOceanBaseデータベースMySQL互換モードのテナントが作成済みであること。
接続および移行権限を持つソース側およびターゲット側のデータベースアカウントを準備していること。
ソース側およびターゲット側の接続情報を準備し、対応するネットワークおよび許可リストの設定を完了していること。事前にデータソースを作成してテストすることもできます。詳細については、PolarDB-X 2.0データソースおよびOceanBaseデータソースを参照してください。
増分同期が必要な場合、ソース側が増分同期に必要なBinlog条件を満たしていること。
使用上の制限
PolarDB-X 2.0データソースのクラウドプロバイダーはAlibaba Cloudのみをサポートします。
サポートされているソース側のバージョンはPolarDB-X 2.0です。
ターゲット側はOceanBaseデータベースのMySQL互換モードのクラスタインスタンス(トランザクション型)およびクラスタインスタンス(フラッグシップ版)のみをサポートし、クラスタインスタンス(分析型)およびセルフマネージドデータベースはサポートしません。
構造移行、全量移行、および増分同期をサポートしますが、全量検証および逆方向増分はサポートしません。
増分同期はDMLのみをサポートし、DDLはサポートしません。DMLは
INSERT、UPDATE、およびDELETE操作をサポートします。この移行構成では、全量検証、行数検証、または増分検証タスクを作成できません。
ソース側とターゲット側のインスタンスタイプ
サイド |
データベースタイプ |
インスタンスタイプ |
|---|---|---|
| ソース側 | PolarDB-X 2.0 | Alibaba Cloud PolarDB-X 2.0 |
| ターゲット側 | OceanBase MySQL Compatible | クラスタインスタンス(トランザクション型)またはクラスタインスタンス(フラッグシップ版) |
手順
データ移行タスクを新規作成します。
- OceanBase Cloudコンソールにログインします。
- 左側のナビゲーションバーで、データサービス > データ移行 をクリックします。
- データ移行 タブで、移行タスクを作成する をクリックします。
カスタムの移行タスク名を入力します。
数字と英字の組み合わせを使用することを推奨します。名前にはスペースを含めず、長さは64文字を超えないようにしてください。
ソースとターゲットを設定する ページで、ソース側とターゲット側を設定します。
ソース側またはターゲット側のエリアにある クイック入力 をクリックし、保存済みのデータソースを選択すると、対応する設定が自動的に入力されます。手動で接続情報を入力した後、該当するエリアの右上にある 保存 アイコンをクリックすると、設定がデータソースとして保存されます。
ソース側を設定します。
パラメータ説明クラウドプロバイダー Alibaba Cloud を選択します。 リージョン ソース側のPolarDB-X 2.0インスタンスが存在するリージョンを選択します。 データベースタイプ PolarDB-X 2.0 を選択します。 インスタンスタイプ Alibaba Cloud PolarDB-X 2.0 を選択します。 接続タイプ プライベートネットワーク接続、パブリック接続、または ピアリング接続 を選択します。 エンドポイントサービスID プライベートネットワーク接続を選択した場合に入力します。これはPolarDB-X 2.0インスタンスへのアクセスに使用されます。取得方法 をクリックして説明を見ることができます。 ピアリング接続ID ピアリング接続を選択した場合、ドロップダウンリストから利用可能なピアリング接続を選択します。 接続情報 パブリックネットワーク接続またはピアリング接続を選択した場合、該当するネットワークを介してPolarDB-X 2.0インスタンスにアクセスするためのIPアドレスまたはホスト名を入力します。パブリックネットワーク接続では、ページに表示されているIPアドレスをインスタンスの許可リストに追加する必要があります。 ポート 選択した接続方式に基づいて、エンドポイントサービスまたはPolarDB-X 2.0インスタンスの実際の接続ポートを入力します。 アカウント ソース側のPolarDB-X 2.0移行アカウントを入力します。 パスワード ソース側移行アカウントのパスワードを入力します。 3つの接続方式の準備作業とパラメータの説明については、PolarDB-X 2.0データソースを参照してください。
ターゲット側を設定します。
パラメータ説明クラウドプロバイダー Alibaba Cloud を選択します。 リージョン ターゲット側のOceanBaseデータベースが存在するリージョンを選択します。 データベースタイプ OceanBase MySQL Compatible を選択します。 インスタンスタイプ クラスタインスタンス(トランザクション) または クラスタインスタンス(フラッグシップ版) を選択します。 インスタンス ターゲット側テナントが存在するインスタンスを選択します。 テナント データを受信するMySQL互換モードのテナントを選択します。 アカウント ターゲット側の移行アカウントを選択します。 パスワード ターゲット側移行アカウントのパスワードを入力します。
テストして続行 をクリックします。
タイプとオブジェクトを選択 ページで、移行タイプとオブジェクトを設定します。
移行タイプを選択します。
移行タイプ説明構造移行 ソース側のテーブル構造をターゲット側に移行します。 全量移行 ソース側テーブルの既存データをターゲット側の対応するテーブルに移行します。 増分同期 ソース側の新規追加、変更、削除データを継続的に同期します。 増分同期 を選択した場合、DML同期 のみを設定できます。デフォルトでは
INSERT、UPDATE、DELETE操作が同期されますが、必要に応じて調整可能です。設定方法については、カスタムDML/DDLの設定を参照してください。この移行構成では、DDL同期、全量検証、逆方向増分はサポートされていません。移行対象を選択します。
オブジェクトの指定 と マッチングルール をサポートしています。
- 指定オブジェクトを使用する場合、データベースオブジェクト または データベース全体 タブでオブジェクトを選択します。ソース側のオブジェクトリストから移行対象を選択し、> をクリックして選択済みオブジェクトリストに追加します。
- マッチングルールを使用する場合、移行対象のルールとオプションの除外対象ルールを入力し、検証 をクリックします。検証に合格したら、ルールにヒットする最終的な対象、追加される対象、除外される対象をプレビューし、次へ をクリックします。設定方法については、マッチングルールの設定を参照してください。
必要に応じてオブジェクト設定を調整します。
操作説明名前の変更 ターゲット側のデータベース名とテーブル名を変更します。詳細については、データベース・テーブルの名前の変更を参照してください。マッチングルールでオブジェクトを選択する場合、ルール内で名前マッピングを設定してください。 行のフィルタリング WHERE条件を使用してデータをフィルタリングします。詳細については、SQL条件でのデータフィルタリングを参照してください。
次へ をクリックし、移行オプション ページに進みます。必要に応じてページで提供されている並列処理またはスロットリングパラメータを設定するか、デフォルト設定のままにします。
移行オプションの設定が完了したら、事前チェック をクリックします。
事前チェックに成功したら、ページの指示に従ってデータ移行タスクを開始します。
タスクが開始された後は、移行の進捗状況と増分遅延を確認し、ターゲット側のデータを確認してください。詳細については、データ移行タスクの詳細を見るを参照してください。