Gunakan Data Transmission Service (DTS) untuk mengatur sinkronisasi data satu arah yang berkelanjutan antara dua instans PolarDB-X 1.0. DTS memahami arsitektur terdistribusi PolarDB-X 1.0: secara otomatis membuat subtask untuk setiap instans ApsaraDB RDS for MySQL yang mendasarinya dan melacak progres masing-masing di PolarDB-X 1.0PolarDB-X 1.0PolarDB-X 1.0PolarDB-X 1.0PolarDB-X 1.0PolarDB-X 1.0PolarDB-X 1.0PolarDB-X 1.0PolarDB-X 1.0 Task Topology.
Sinkronisasi dua arah antar instans PolarDB-X 1.0 tidak didukung.PolarDB-X 1.0PolarDB-X 1.0PolarDB-X 1.0
Prasyarat
Sebelum memulai, pastikan Anda telah:
Membuat instans PolarDB-X 1.0 sumber dan tujuan.
Membuat database dan tabel target di instans tujuan dengan skema yang sesuai dengan objek yang akan disinkronkan — lihat Create a PolarDB-X 1.0 instance dan Create a database.
Menggunakan ApsaraDB RDS for MySQL sebagai tipe penyimpanan untuk kedua instans — PolarDB for MySQL tidak didukung.
Memiliki ruang penyimpanan yang cukup di instans tujuan untuk menampung seluruh data dari sumber (ruang tabel tujuan akan lebih besar daripada sumber karena fragmentasi akibat operasi INSERT konkuren selama sinkronisasi penuh).
Persyaratan log biner untuk instans ApsaraDB RDS for MySQL yang terhubung ke PolarDB-X 1.0:PolarDB-X 1.0
| Persyaratan | Hanya sinkronisasi data penuh | Sinkronisasi penuh + inkremental |
|---|---|---|
Pencatatan biner diaktifkan, binlog_row_image = full | Wajib — DTS gagal dalam Pemeriksaan Awal jika tidak dipenuhi | Wajib |
| Periode retensi log biner minimum | Tidak diperlukan | 7 hari selama durasi penuh sinkronisasi data penuh awal |
| Periode retensi minimum setelah sinkronisasi penuh selesai | Tidak diperlukan | 24 jam |
Untuk sinkronisasi hanya inkremental, simpan log biner minimal selama 24 jam.
Batasan
Kendala database sumber:
Tabel harus memiliki kendala PRIMARY KEY atau UNIQUE dengan semua field bersifat unik — jika tidak, tabel tujuan mungkin berisi catatan duplikat.
Tabel yang hanya memiliki kendala UNIQUE tidak mendukung sinkronisasi skema; gunakan tabel dengan kendala PRIMARY KEY sebagai gantinya.
Tabel dengan indeks sekunder tidak dapat disinkronkan.
Satu tugas sinkronisasi mendukung hingga 5.000 tabel saat Anda memilih tabel individual sebagai objek (bukan seluruh database); untuk lebih dari 5.000 tabel, konfigurasikan beberapa tugas atau sinkronkan seluruh database.
Kendala operasional selama sinkronisasi:
Jangan melakukan penskalaan pada instans sumber (termasuk instans ApsaraDB RDS for MySQL yang terhubung), mengubah distribusi database fisik untuk database atau tabel logis yang dikonfigurasi, memigrasikan tabel hot, mengubah kunci shard, atau menjalankan operasi bahasa definisi data (DDL) online — tindakan apa pun ini akan menyebabkan tugas gagal atau menghasilkan data yang tidak konsisten.
Jika Anda mengubah jenis jaringan instans PolarDB-X 1.0 sumber, perbarui pengaturan koneksi jaringan tugas sinkronisasi setelahnya.PolarDB-X 1.0
Jangan gunakan gh-ost atau pt-online-schema-change untuk operasi DDL pada objek yang sedang disinkronkan.
Tulis data ke database tujuan hanya melalui DTS — penggunaan alat lain, termasuk DDL Online Data Management (DMS), dapat menyebabkan kehilangan data di tujuan.
Kendala arsitektur:
Instans read-only pada lapisan komputasi PolarDB-X 1.0 tidak didukung.PolarDB-X 1.0
Hanya pemisahan horizontal (berdasarkan database atau tabel) yang didukung; pemisahan vertikal tidak didukung.PolarDB-X 1.0
Penagihan
| Jenis sinkronisasi | Biaya |
|---|---|
| Sinkronisasi skema dan sinkronisasi data penuh | Gratis |
| Sinkronisasi data inkremental | Dikenai biaya — lihat Ikhtisar penagihan |
Topologi sinkronisasi yang didukung
Sinkronisasi satu arah satu-ke-satu
Sinkronisasi satu arah satu-ke-banyak
Sinkronisasi satu arah cascade
Sinkronisasi satu arah banyak-ke-satu
Untuk daftar lengkap topologi yang didukung DTS, lihat Synchronization topologies.
Operasi SQL yang didukung
| Jenis operasi | Pernyataan |
|---|---|
| DML | INSERT, UPDATE, DELETE |
Izin yang diperlukan
| Database | Izin yang diperlukan |
|---|---|
| Instans PolarDB-X 1.0 sumber | Pelajari objek yang akan disinkronkan — lihat Mengelola akun |
| Instans PolarDB-X 1.0 tujuan | Izin baca dan tulis pada objek tujuan |
Buat tugas sinkronisasi
Jadwalkan sinkronisasi selama jam sepi untuk meminimalkan dampak pada beban kerja produksi. DTS menggunakan sumber daya baca dan tulis dari database sumber dan tujuan selama fase sinkronisasi data penuh awal.
Langkah 1: Buka halaman Tugas Sinkronisasi Data
Masuk ke Konsol Data Management (DMS).
Pada bilah navigasi atas, klik Data + AI.
Pada panel navigasi kiri, pilih DTS (DTS) > Data Synchronization.
Struktur menu dapat berbeda tergantung pada mode konsol DMS Anda. Lihat Simple mode dan Customize the layout and style of the DMS console untuk detailnya. Anda juga dapat langsung membuka halaman Tugas Sinkronisasi Data.
Langkah 2: Pilih wilayah
Pada halaman Data Synchronization Tasks, pilih wilayah tempat instans sinkronisasi Anda berada.
Pada konsol DTS baru, pilih wilayah di bilah navigasi atas.
Langkah 3: Konfigurasi database sumber dan tujuan
Klik Create Task. Pada wizard Create Data Synchronization Task, konfigurasikan parameter berikut.
Baca bagian Limits yang ditampilkan di halaman sebelum melanjutkan — tugas yang salah konfigurasi dapat gagal atau menghasilkan data yang tidak konsisten.
Source Database
| Parameter | Nilai |
|---|---|
| Task Name | Nama deskriptif untuk mengidentifikasi tugas ini. DTS menghasilkan nama default; keunikan tidak wajib. |
| Database Type | PolarDB-X 1.0 |
| Connection Type | Alibaba Cloud Instance |
| Instance Region | Wilayah instans PolarDB-X 1.0 sumber |
| Instance ID | ID instans PolarDB-X 1.0 sumber |
| Database Account | Akun dengan izin baca pada sumber — lihat Izin yang diperlukan |
| Database Password | Kata sandi untuk akun database |
Destination Database
| Parameter | Nilai |
|---|---|
| Database Type | PolarDB-X 1.0 |
| Connection Type | Alibaba Cloud Instance |
| Instance Region | Wilayah instans PolarDB-X 1.0 tujuan |
| Instance ID | ID instans PolarDB-X 1.0 tujuan |
| Database Account | Akun dengan izin baca dan tulis pada tujuan — lihat Izin yang diperlukan |
| Database Password | Kata sandi untuk akun database |
Langkah 4: Uji konektivitas
Klik Test Connectivity and Proceed.
DTS secara otomatis menambahkan blok CIDR servernya ke daftar putih instans database Alibaba Cloud. Untuk database yang dikelola sendiri yang dihosting di Elastic Compute Service (ECS), DTS menambahkan blok CIDR tersebut ke aturan security group ECS — jika database mencakup beberapa instans ECS, tambahkan blok CIDR tersebut secara manual ke masing-masing instans. Untuk database on-premises atau pihak ketiga, tambahkan blok CIDR tersebut secara manual ke daftar putih database. Untuk daftar lengkap blok CIDR server DTS, lihat Add the CIDR blocks of DTS servers.
Menambahkan blok CIDR DTS ke daftar putih atau aturan security group membawa risiko keamanan. Sebelum melanjutkan, ambil tindakan pencegahan seperti menggunakan kredensial kuat, membatasi port yang terbuka, mengautentikasi panggilan API, meninjau aturan daftar putih secara berkala, dan menghapus blok CIDR yang tidak sah. Untuk koneksi yang lebih aman, gunakan Express Connect, VPN Gateway, atau Smart Access Gateway.
Langkah 5: Konfigurasi objek dan pengaturan sinkronisasi
| Pengaturan | Deskripsi |
|---|---|
| Synchronization Types | Incremental Data Synchronization dipilih secara default. Pilih Full Data Synchronization jika Anda juga ingin menyinkronkan data historis. Schema Synchronization tidak dapat dipilih secara independen. |
| Processing Mode of Conflicting Tables | Precheck and Report Errors (default): gagal dalam Pemeriksaan Awal jika tujuan berisi tabel dengan nama yang sama seperti sumber. Gunakan pemetaan nama objek jika Anda tidak dapat menghapus atau mengganti nama tabel yang bertentangan. Ignore Errors and Proceed: melewati pemeriksaan awal konflik nama. Selama sinkronisasi penuh, catatan yang bertentangan tetap tidak berubah di tujuan; selama sinkronisasi inkremental, catatan tersebut ditimpa. Lanjutkan dengan hati-hati — ketidaksesuaian skema dapat menyebabkan kegagalan sinkronisasi sebagian. |
| Capitalization of object names in destination instance | Mengontrol kapitalisasi nama database, tabel, dan kolom di tujuan. Default adalah DTS default policy. Lihat Specify the capitalization of object names. |
| Source Objects | Pilih tabel atau database dari daftar sumber, lalu klik ikon panah untuk memindahkannya ke Selected Objects. Jika Anda memilih seluruh database sebagai objek yang akan disinkronkan, DTS tidak akan menyinkronkan perubahan yang dibuat untuk membuat atau menghapus tabel di database sumber ke database tujuan. |
| Selected Objects | Klik kanan objek tunggal untuk mengganti namanya atau memfilter baris dengan klausa WHERE. Klik Batch Edit di pojok kanan atas untuk mengganti nama beberapa objek sekaligus. Lihat Map object names dan Specify filter conditions. |
Langkah 6: Konfigurasi pengaturan lanjutan
Klik Next: Advanced Settings dan konfigurasikan parameter berikut.
| Parameter | Deskripsi |
|---|---|
| Monitoring and Alerting | Pilih Yes untuk menerima notifikasi ketika tugas gagal atau latensi sinkronisasi melebihi ambang batas. Konfigurasikan ambang batas peringatan dan kontak notifikasi. Pilih No untuk melewatkan peringatan. Lihat Configure monitoring and alerting. |
| Retry time for failed connections | Durasi DTS mencoba ulang sebelum menandai tugas sebagai gagal. Rentang: 10–1440 menit. Default: 720 menit. Kami menyarankan mengatur nilai ini lebih dari 30 menit. Jika beberapa tugas berbagi database sumber atau tujuan yang sama, waktu coba ulang terpendek di antara mereka yang berlaku. Biaya instans DTS terus berjalan selama masa coba ulang. |
| Configure ETL | Pilih Yes untuk mentransformasi data dalam perjalanan menggunakan aturan ekstrak, transformasi, dan muat (ETL). Lihat Configure ETL dan What is ETL? |
Langkah 7: Jalankan pemeriksaan awal
Klik Next: Save Task Settings and Precheck. DTS memvalidasi konfigurasi Anda sebelum memulai tugas. Untuk meninjau parameter OpenAPI untuk konfigurasi ini, arahkan kursor ke tombol tersebut dan klik Preview OpenAPI parameters sebelum melanjutkan.
Jika ada item pemeriksaan awal yang gagal, klik View Details di samping item yang gagal, atasi masalahnya, lalu klik Precheck Again.
Jika suatu item ditampilkan sebagai peringatan dan bukan kegagalan mutlak:
Jika peringatan tersebut tidak dapat diabaikan, perbaiki masalahnya dan jalankan ulang pemeriksaan awal.
Jika peringatan tersebut dapat diabaikan, klik Confirm Alert Details, lalu Ignore, lalu OK, dan kemudian Precheck Again. Mengabaikan peringatan dapat menyebabkan ketidakkonsistenan data.
Langkah 8: Beli instans sinkronisasi
Tunggu hingga Success Rate mencapai 100%, lalu klik Next: Purchase Instance. Konfigurasikan instans sebagai berikut.
| Parameter | Deskripsi |
|---|---|
| Billing Method | Subscription: bayar di muka; tersedia untuk 1–9 bulan atau 1, 2, 3, atau 5 tahun. Lebih hemat biaya untuk penggunaan jangka panjang. Pay-as-you-go: ditagih per jam; rilis instans saat Anda tidak lagi membutuhkannya untuk menghentikan biaya. |
| Resource group settings | Kelompok sumber daya untuk instans ini. Default: default resource group. Lihat What is Resource Management? |
| Instance Class | Kelas throughput sinkronisasi. Lihat Instance classes of data synchronization instances. |
| Subscription Duration | Hanya tersedia untuk metode penagihan subscription. |
Baca dan terima Data Transmission Service (Pay-as-you-go) Service Terms, lalu klik Buy and Start. Pada dialog konfirmasi, klik OK.
Tugas muncul di daftar tugas. DTS menjalankan subtask terpisah untuk setiap instans ApsaraDB RDS for MySQL yang terhubung ke instans PolarDB-X 1.0 sumber. Pantau status subtask di Task Topology.
Langkah selanjutnya
Synchronization topologies — jelajahi pola topologi yang didukung untuk pengaturan yang lebih kompleks.
Map object names — ganti nama objek di tujuan tanpa mengubah sumber.
Configure monitoring and alerting — atur peringatan latensi dan kegagalan untuk tugas.
Billing overview — pahami cara penagihan sinkronisasi inkremental.