Topik ini menjelaskan cara menggunakan Data Transmission Service (DTS) untuk berlangganan log biner AnalyticDB for MySQL serta melakukan sinkronisasi dan migrasi data inkremental antar kluster AnalyticDB for MySQL.
Prasyarat
Kluster AnalyticDB for MySQL menggunakan Enterprise Edition, Basic Edition, Data Lakehouse Edition, atau Data Warehouse Edition dalam mode elastis.
Versi minor kluster AnalyticDB for MySQL adalah 3.2.1.0 atau lebih baru.
CatatanUntuk melihat dan memperbarui versi minor kluster AnalyticDB for MySQL, masuk ke Konsol AnalyticDB for MySQL dan buka bagian Configuration Information pada halaman Cluster Information.
Fitur Change Data Capture (CDC) diaktifkan untuk kluster AnalyticDB for MySQL.
CatatanFitur CDC menangkap perubahan data dan mendukung sinkronisasi serta migrasi data inkremental. Untuk mengaktifkan fitur CDC atau memeriksa apakah fitur tersebut telah diaktifkan, hubungi dukungan teknis.
Batasan
Fitur binary logging tidak dapat diaktifkan untuk tabel XUANWU_V2. Dalam kasus ini, Anda tidak dapat melakukan sinkronisasi atau migrasi data inkremental pada tabel XUANWU_V2 antar kluster AnalyticDB for MySQL dengan berlangganan log biner.
Prosedur
Masuk ke Konsol AnalyticDB for MySQL. Di pojok kiri atas konsol, pilih wilayah. Di panel navigasi sebelah kiri, klik Clusters. Temukan kluster yang ingin Anda kelola dan klik ID kluster tersebut.
Aktifkan fitur binary logging untuk sebuah tabel di kluster sumber AnalyticDB for MySQL. Dalam contoh ini, digunakan tabel bernama source_table.
CatatanAnda hanya dapat mengaktifkan fitur binary logging untuk tabel di AnalyticDB for MySQL.
Aktifkan fitur binary logging saat membuat tabel
CREATE TABLE source_table ( `id` INT, `num` BIGINT, PRIMARY KEY (`id`) )DISTRIBUTED BY HASH (id) BINLOG=true;Aktifkan fitur binary logging untuk tabel yang sudah ada
ALTER TABLE source_table BINLOG=true;(Opsional) Ubah periode retensi log biner.
Anda dapat mengubah parameter
binlog_ttluntuk mengatur periode retensi log biner. Nilai default parameter ini adalah 6h. Jalankan pernyataan berikut untuk mengubah periode retensi log biner menjadi 1 hari untuk tabel source_table:ALTER TABLE source_table binlog_ttl='1d';Parameter
binlog_ttlmendukung nilai dalam format berikut:Milidetik: angka murni. Misalnya,
60berarti 60 milidetik.Detik: angka + s. Misalnya,
30sberarti 30 detik.Jam: angka + h. Misalnya,
2hberarti 2 jam.Hari: angka + d. Misalnya,
1dberarti 1 hari.
CatatanUntuk kluster dengan versi kernel 3.2.1.9 atau lebih baru (untuk versi 3.2.1), 3.2.2.14 atau lebih baru (untuk versi 3.2.2), 3.2.3.8 atau lebih baru (untuk versi 3.2.3), 3.2.4.4 atau lebih baru (untuk versi 3.2.4), atau 3.2.5.1 atau lebih baru (untuk versi 3.2.5), periode retensi maksimum log biner adalah 365 hari. Untuk kluster dengan versi kernel yang lebih lama dari versi tersebut, periode retensi maksimum log biner adalah 21 hari.
Kami menyarankan agar Anda mengatur periode retensi log biner ke nilai yang lebih besar dari atau sama dengan nilai default parameter
binlog_ttl. Jika Anda mengatur periode retensi ke nilai yang terlalu kecil, log biner mungkin dihapus sehingga sinkronisasi data gagal.Untuk mengetahui periode retensi log biner saat ini, jalankan pernyataan
SHOW CREATE TABLE source_table;.
(Opsional) Lihat informasi mengenai log biner.
CatatanSetelah Anda menjalankan pernyataan SQL berikut untuk menanyakan informasi mengenai log biner, nilai 0 akan dikembalikan jika Anda hanya mengaktifkan fitur binary logging. Informasi log hanya ditampilkan setelah Anda berlangganan log biner.
Untuk menanyakan nama file dan lokasi log biner terbaru, jalankan pernyataan berikut:
SHOW MASTER STATUS FOR source_table;Untuk menanyakan semua log biner historis yang belum dihapus beserta ukurannya, jalankan pernyataan berikut:
SHOW BINARY LOGS FOR source_table;