All Products
Search
Document Center

AnalyticDB:Sinkronisasi data dari database MySQL yang dikelola sendiri pada instance ECS ke AnalyticDB for PostgreSQL

Last Updated:Mar 29, 2026

Gunakan Data Transmission Service (DTS) untuk mereplikasi data secara berkelanjutan dari database MySQL yang di-hosting pada instance ECS ke instance AnalyticDB for PostgreSQL. DTS menangani baik sinkronisasi data penuh awal maupun sinkronisasi inkremental berkelanjutan, sehingga data analitik Anda tetap mutakhir tanpa intervensi manual.

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

  • Database MySQL (versi 5.1, 5.5, 5.6, 5.7, atau 8.0) yang berjalan pada instance ECS

  • Binary logging diaktifkan pada database MySQL sumber, dan akun database dibuat khusus untuk tugas sinkronisasi. Untuk petunjuk penyiapan, lihat Create an account for a self-managed MySQL database and configure binary logging. Akun database tersebut memerlukan izin berikut: SELECT (pada objek yang akan disinkronkan), REPLICATION CLIENT, REPLICATION SLAVE, dan SHOW VIEW.

  • Kunci primer pada semua tabel yang akan Anda sinkronkan

  • Instance AnalyticDB for PostgreSQL. Untuk petunjuk penyiapan, lihat Create an AnalyticDB for PostgreSQL instance.

Batasan

Objek yang didukung: Hanya tabel. Anda tidak dapat menyinkronkan database atau skema secara langsung.

Operasi SQL yang didukung:

  • DML: INSERT, UPDATE, DELETE

  • DDL: ADD COLUMN saja. CREATE TABLE tidak didukung. Untuk menyinkronkan tabel baru yang ditambahkan setelah tugas dimulai, tambahkan secara manual ke objek yang dipilih. Lihat Add an object to a data synchronization task.

Tipe data yang tidak didukung: BIT, VARBIT, GEOMETRY, ARRAY, UUID, TSQUERY, TSVECTOR, TXID_SNAPSHOT, POINT. DTS tidak menyinkronkan kolom dengan tipe data tersebut.

Indeks awalan: Indeks awalan tidak disinkronkan. Jika tabel sumber Anda menggunakan indeks awalan, data mungkin gagal disinkronkan.

Alat DDL Online: Jangan gunakan gh-ost atau pt-online-schema-change selama tugas sinkronisasi aktif. Jika tidak, sinkronisasi data mungkin gagal.

Topologi sinkronisasi yang didukung

  • Sinkronisasi satu arah satu-ke-satu

  • Sinkronisasi satu arah satu-ke-banyak

  • Sinkronisasi satu arah banyak-ke-satu

Pemetaan istilah

MySQL dan AnalyticDB for PostgreSQL menggunakan terminologi berbeda untuk konsep yang sama:

MySQLAnalyticDB for PostgreSQL
DatabaseSchema
TableTable

Menyiapkan tugas sinkronisasi

Langkah 1: Membeli instance DTS

Purchase a DTS instance. Pada halaman pembelian, atur opsi berikut:

  • Source Instance: MySQL

  • Target Instance: AnalyticDB for PostgreSQL

  • Synchronization Topology: One-Way Synchronization

Langkah 2: Mengonfigurasi saluran sinkronisasi

  1. Masuk ke DTS console.

  2. Pada panel navigasi sebelah kiri, klik Data Synchronization.

  3. Di bagian atas halaman Synchronization Tasks, pilih wilayah tempat instance tujuan berada.

  4. Temukan instance DTS dan klik Configure Synchronization Channel di kolom Actions.

  5. Konfigurasikan instance sumber dan tujuan.

    Configure the source and destination instances

    Rincian Instans Sumber

    ParameterDeskripsi
    Synchronization task nameDTS menghasilkan nama secara otomatis. Tentukan nama deskriptif agar mudah diidentifikasi. Nama ini tidak perlu unik.
    Instance typePilih User-Created Database in ECS Instance.
    Instance regionWilayah sumber yang Anda pilih pada halaman pembelian. Hanya-baca.
    Instance IDPilih instance ECS yang meng-host database MySQL yang dikelola sendiri.
    Database typeAtur ke MySQL. Hanya-baca.
    Port numberMasukkan port layanan MySQL. Default: 3306.
    Database accountMasukkan akun MySQL untuk tugas sinkronisasi. Akun ini memerlukan izin yang tercantum dalam Prasyarat.
    Database passwordMasukkan kata sandi untuk akun database.

    Detail instance tujuan

    ParameterDeskripsi
    Instance typeAtur ke AnalyticDB for PostgreSQL. Hanya-baca.
    Instance regionWilayah tujuan yang Anda pilih pada halaman pembelian. Hanya-baca.
    Instance IDPilih instance AnalyticDB for PostgreSQL tujuan.
    Database nameMasukkan nama database tujuan.
    Database accountMasukkan initial account dari instance AnalyticDB for PostgreSQL, atau akun dengan izin RDS_SUPERUSER. Untuk informasi lebih lanjut, lihat Create a database account dan Manage users and permissions.
    Database passwordMasukkan kata sandi untuk akun database tujuan.
  6. Klik Set Whitelist and Next.

    DTS secara otomatis menambahkan blok CIDR server DTS ke aturan inbound instance ECS dan daftar putih AnalyticDB for PostgreSQL, sehingga DTS dapat mengakses kedua instance tersebut.

Langkah 3: Memilih objek dan kebijakan sinkronisasi

Synchronize data from MySQL to AnalyticDB for PostgreSQL

Konfigurasikan pengaturan berikut:

PengaturanOpsi dan deskripsi
Initial synchronizationPilih kedua opsi Initial Schema Synchronization dan Initial Full Data Synchronization. DTS menyalin skema dan data ke instance tujuan sebelum memulai sinkronisasi inkremental.
Processing mode of conflicting tablesClear Target Table: Mengosongkan data tabel tujuan sebelum sinkronisasi data penuh awal. Gunakan opsi ini jika Anda ingin memulai dari awal atau setelah menjalankan uji coba. Ignore: Menambahkan data ke catatan yang sudah ada. Gunakan opsi ini saat menggabungkan data dari beberapa tabel sumber ke satu tabel tujuan.
Synchronization typePilih operasi DML yang akan disinkronkan: Insert, Update, Delete, AlterTable.
Objects to synchronizePada bagian Available, pilih tabel yang akan disinkronkan dan pindahkan ke bagian Selected menggunakan ikon Rightwards arrow. Untuk mengganti nama objek di instance tujuan, gunakan fitur object name mapping.
Replicate temporary tables when DMS performs DDL operationsBerlaku jika Anda menggunakan DMS untuk menjalankan operasi DDL Online pada sumber. Yes: Menyinkronkan tabel temporary yang dihasilkan oleh operasi DDL Online. Operasi DDL besar dapat menyebabkan keterlambatan sinkronisasi. No: Melewatkan tabel temporary dan hanya menyinkronkan data DDL asli. Hal ini dapat mengunci tabel tujuan.
Retry time for failed connectionsDefault: 720 menit (12 jam). DTS mencoba kembali koneksi dalam jendela waktu ini. Jika koneksi dipulihkan tepat waktu, tugas sinkronisasi akan dilanjutkan secara otomatis. Atur nilai ini berdasarkan kebutuhan ketersediaan Anda. Anda tetap dikenai biaya untuk instance DTS selama jendela percobaan ulang.

Langkah 4: Mengatur kolom kunci primer dan kolom distribusi (hanya untuk sinkronisasi skema awal)

Langkah ini muncul hanya jika Anda memilih Initial Schema Synchronization. Tentukan kolom kunci primer dan kolom distribusi untuk setiap tabel yang disinkronkan ke AnalyticDB for PostgreSQL.

Set primary key and distribution columns

Untuk informasi lebih lanjut, lihat Define constraints dan Define table distribution.

Langkah 5: Menjalankan Pemeriksaan Awal dan memulai sinkronisasi

  1. Klik Precheck di pojok kanan bawah. DTS memvalidasi konfigurasi sebelum memulai tugas. Jika ada pemeriksaan yang gagal, klik ikon 提示 di samping item yang gagal untuk melihat detailnya. Perbaiki masalah tersebut dan jalankan kembali Pemeriksaan Awal. Jika item yang gagal tidak kritis untuk kasus penggunaan Anda, klik Ignore untuk melewatinya, lalu jalankan kembali Pemeriksaan Awal.

  2. Saat muncul pesan The precheck is passed, tutup dialog tersebut. Tugas sinkronisasi akan dimulai secara otomatis.

  3. Tunggu hingga sinkronisasi awal selesai. Status tugas berubah menjadi Synchronizing begitu sinkronisasi inkremental dimulai. Pantau status tugas di halaman Synchronization Tasks.

    View the status of a data synchronization task

Pertimbangan kinerja

DTS membaca dari sumber dan menulis ke tujuan secara konkuren selama sinkronisasi data penuh awal. Pada database dengan beban tinggi, spesifikasi rendah, atau volume data besar, hal ini dapat memengaruhi kinerja. Untuk meminimalkan dampak, jalankan sinkronisasi pada jam sepi ketika utilisasi CPU baik di sumber maupun tujuan berada di bawah 30%.