データ移行は日常的な運用保守作業において一般的な操作であり、クラスタ負荷の調整やデータセンター移転に不可欠な操作です。OceanBaseデータベースでは、クラスタ内やテーブル間のデータアーカイブ、ディスク使用量の均等化、リソースユニットの移動などの操作は簡単なコマンドで迅速に実行できますが、異種データソース間やクラスタ間のデータ同期などの機能を扱う場合は、外部ツールを利用する必要があります。
このドキュメントでは、主にいくつかの一般的なデータ移行方法とツールについて説明します。
適用シナリオ
データ移行はデータベース運用保守における一般的な操作であり、主な適用シナリオは以下の通りです:
- クラスタ負荷の調整やデータセンター移転。
- ファイルへのデータエクスポート、ファイルからデータベースへのインポート。
- データベースの置換。
- データベースの論理レプリケーション、読み書き分離、データベースの災害復旧、ビジネスのマルチアクティブなど。
- 業務上のデータレプリケーション要件。
移行プラン
OceanBaseデータベースは豊富なデータ移行・レプリケーション方法を提供しています。これには以下が含まれます:
OMSを使用した移行(推奨)
obloader & obdumperを使用した移行
- obloaderを使用したデータのインポート
- obdumperを使用したデータのエクスポート
SQLスクリプトを使用した移行
MyDumperを使用した移行
DataXを使用した移行
OUTFILEステートメントを使用した移行
DBCATを使用した移行
説明
OceanBaseデータベースのテナントデータ移行は、バックアップ・リストア機能を利用して実現することもできます。OceanBaseデータベースのバックアップ・リストア機能の詳細については、物理バックアップとリストアの概要を参照してください。
移行プランの具体的なサポート状況は以下の通りです:
移行プラン |
構造移行 |
全量データ移行 |
増分データ移行 |
データ検証 |
対応データソース |
|---|---|---|---|---|---|
| OMS | サポート | サポート | サポート | サポート | OceanBase MySQL Oracle PostgreSQL DB2_LUW TiDB Kafka RocketMQ Datahub |
| obloader & obdumper | サポート | サポート | 非サポート | 非サポート | OceanBase |
| SQLスクリプト移行 | サポート | サポート | 非サポート | 非サポート | 主要なデータベース。ただし、インスタンス間でのデータ移行はできません |
| MyDumper | サポート | サポート | 非サポート | 非サポート | MySQL互換データソース |
| DataX | 非サポート | サポート | 非サポート | 非サポート | 多岐にわたる。詳細な範囲は公式ドキュメントを参照 |
| OUTFILEステートメント | 非サポート | サポート | 非サポート | 非サポート | MySQL OceanBase |
| DBCAT | サポート | 非サポート | 非サポート | 非サポート | 多岐にわたる。詳細な範囲は公式ドキュメントを参照 |