Anda dapat menyinkronkan operasi DDL saat memigrasikan data antar tenant MySQL di OceanBase Database.
Operasi DDL yang didukung untuk sinkronisasi
Membuat tabel menggunakan pernyataan
CREATE TABLE.Anda dapat membuat tabel terpartisi, tetapi tidak dapat menggunakan
CREATE TABLE AS SELECTuntuk membuat tabel. Tabel terpartisi HASH, RANGE, dan LIST, serta tabel sub-partisi HASH, RANGE, dan LIST didukung.Menghapus tabel menggunakan pernyataan
DROP TABLE.Memotong tabel menggunakan pernyataan
TRUNCATE TABLE.Mengganti nama tabel menggunakan pernyataan
RENAME TABLEatauALTER TABLE RENAME.Menambahkan kolom menggunakan pernyataan
ALTER TABLE ADD COLUMN.Memodifikasi kolom menggunakan pernyataan
ALTER TABLE MODIFY COLUMN.PentingAnda dapat menambah panjang kolom, tetapi tidak dapat mengubah tipe kolom.
Membuat indeks menggunakan pernyataan
CREATE INDEX.Menghapus indeks menggunakan pernyataan
DROP INDEX.Menambahkan atau menghapus komentar pada tabel atau kolom menggunakan pernyataan
COMMENT.
Batasan sinkronisasi DDL
Jika tabel yang akan disinkronkan melibatkan operasi DDL yang tidak didukung, proyek migrasi data mungkin terganggu, dan pengecualian data yang tidak dapat diperbaiki mungkin terjadi.
Operasi DDL yang sering dilakukan pada sebuah tabel tidak didukung. Setelah penyimpan selesai melakukan operasi DDL, yang dapat ditentukan berdasarkan timestamp, ia akan melanjutkan ke operasi DDL berikutnya. Jika tidak, penyimpan mungkin keluar secara tak terduga, dan pengecualian data yang tidak dapat diperbaiki mungkin terjadi.
Pastikan tidak ada operasi DDL yang dilakukan sebelum Anda membuat penyimpan dan ketika penyimpan sedang dimulai. Jika penarikan log terlibat, pastikan tidak ada operasi DDL yang dilakukan selama periode dari waktu mulai penarikan log hingga waktu saat ini. Jika tidak, penyimpan mungkin keluar secara tak terduga, dan pengecualian data yang tidak dapat diperbaiki mungkin terjadi.
Nama tabel sebelum dan sesudah pernyataan
RENAME TABLEharus keduanya termasuk atau keduanya tidak termasuk dalam daftar tabel yang akan disinkronkan.Operasi DDL pembuatan tabel yang melibatkan pernyataan
case when indextidak dapat disinkronkan.Jika Anda mengaktifkan sinkronisasi DDL, indeks yang dihapus di database sumber dengan menjalankan pernyataan
DROP INDEXjuga akan dihapus di database tujuan. Ini dapat menyebabkan hilangnya indeks di database tujuan.