OceanBaseデータベースのMySQL互換モードテナントから、同じMySQL互換モードの別のテナントへデータを移行する際に、DDLの同期をサポートします。
注意
ソース側で作成されたINDEXがデータ送信先に既に存在する場合、データ移行サービスはそのINDEXを自動的に無視し、処理は中断されません。
DDL同期のサポート範囲
列の追加
ALTER TABLE ADD COLUMN列の変更
ALTER TABLE MODIFY COLUMN注意
列の長さをより大きな値に変更することはサポートされますが、列の型を変更することはサポートされません。
列のデフォルト値の変更
ALTER TABLE ALTER COLUMN SET DEFAULTまたはALTER TABLE ALTER COLUMN DROP DEFAULT列の削除
ALTER TABLE DROP COLUMNテーブルの作成
CREATE TABLE注意
CREATE TABLE AS SELECTはサポートされていません。テーブルの削除
DROP TABLEテーブルのクリア
TRUNCATE TABLEインデックスの作成
CREATE INDEXまたはALTER TABLE ADD INDEXインデックスの削除
DROP INDEXまたはALTER TABLE DROP INDEXテーブル名の変更
RENAME TABLEまたはALTER TABLE RENAME
DDL同期の制限事項
同期対象のテーブルに、サポートされていない同期DDLタイプが含まれている場合、データ移行タスクの中断と同時に、データの不整合が発生し、復旧できなくなる可能性があります。
同じテーブルに対してDDL操作を頻繁に実行することはできません。ログの位置に基づいて、Storeが現在のDDL操作の処理を完了したことを確認してから、次のDDL操作を実行してください。そうでない場合、Storeが異常終了したり、復旧できないデータ不整合が発生したりする可能性があります。
Storeの作成前および起動中は、DDL操作を実行しないでください。過去の位置からログを取得する場合は、その位置から現在までの間にDDL操作が実行されていないことを確認してください。そうでない場合、Storeが異常終了したり、復旧できないデータ不整合が発生したりする可能性があります。
RENAME TABLEの前後のテーブル名は、同期が必要なテーブルの範囲内に含まれている必要があります。