全部产品
Search
文档中心

Data Transmission Service:Sinkronkan data dari instance ApsaraDB RDS for MySQL ke kluster PolarDB for MySQL

更新时间:Jul 03, 2025

PolarDB adalah layanan database relasional generasi berikutnya yang dikembangkan oleh Alibaba Cloud. PolarDB kompatibel dengan mesin database MySQL dan menawarkan ketersediaan tinggi, kemudahan penggunaan, serta keandalan. Topik ini menjelaskan cara menyinkronkan data dari instance ApsaraDB RDS for MySQL ke kluster PolarDB for MySQL menggunakan Data Transmission Service (DTS).

Prasyarat

Kluster PolarDB for MySQL telah dibuat. Untuk informasi lebih lanjut, lihat atau Pembelian Kustom.

Catatan Penggunaan

  • DTS menggunakan sumber daya baca dan tulis dari instance RDS sumber dan tujuan selama sinkronisasi data penuh awal. Hal ini dapat meningkatkan beban pada instance RDS. Jika performa instance tidak memadai, spesifikasinya rendah, atau volume datanya besar, layanan database mungkin menjadi tidak tersedia. Sebagai contoh, DTS menggunakan sejumlah besar sumber daya baca dan tulis dalam kasus-kasus berikut: banyak kueri SQL lambat dilakukan pada instance RDS sumber, tabel tidak memiliki kunci utama, atau terjadi deadlock pada instance RDS tujuan. Sebelum sinkronisasi data, evaluasi dampak sinkronisasi data terhadap performa instance RDS sumber dan tujuan. Kami menyarankan Anda untuk menyinkronkan data selama jam-jam sepi, seperti ketika utilisasi CPU instance RDS sumber dan tujuan kurang dari 30%.

  • Kami menyarankan Anda untuk tidak menggunakan gh-ost atau pt-online-schema-change untuk melakukan operasi DDL pada objek selama sinkronisasi data. Jika tidak, sinkronisasi data mungkin gagal.

  • Selama sinkronisasi data penuh awal, operasi INSERT bersamaan dapat menyebabkan fragmentasi pada tabel di kluster tujuan. Setelah sinkronisasi data penuh awal selesai, ruang tabel kluster tujuan lebih besar daripada ruang tabel database sumber.

  • Database sumber harus memiliki PRIMARY KEY atau batasan UNIQUE dan semua bidang harus unik. Jika tidak, kluster tujuan mungkin berisi catatan data duplikat.

Penagihan

Jenis SinkronisasiBiaya Konfigurasi Tugas
Sinkronisasi skema dan data penuhGratis.
Sinkronisasi data tambahanDikenakan biaya. Untuk informasi lebih lanjut, lihat Ikhtisar Penagihan.

Operasi SQL yang dapat disinkronkan

Jenis Operasi

Pernyataan SQL

DML

INSERT, UPDATE, DELETE, dan REPLACE

DDL

  • ALTER TABLE dan ALTER VIEW

  • CREATE FUNCTION, CREATE INDEX, CREATE PROCEDURE, CREATE TABLE, dan CREATE VIEW

  • DROP INDEX dan DROP TABLE

  • RENAME TABLE

    Penting

    Operasi RENAME TABLE dapat menyebabkan inkonsistensi data antara database sumber dan tujuan. Sebagai contoh, jika Anda memilih tabel sebagai objek yang akan disinkronkan dan mengubah nama tabel selama sinkronisasi data, data tabel tersebut tidak disinkronkan ke database tujuan. Untuk mencegah situasi ini, Anda dapat memilih database tempat tabel tersebut berada sebagai objek yang akan disinkronkan saat mengonfigurasi tugas sinkronisasi data. Pastikan bahwa database tempat tabel tersebut berada sebelum dan sesudah operasi RENAME TABLE ditambahkan ke objek yang akan disinkronkan.

  • TRUNCATE TABLE

Topologi sinkronisasi yang didukung

  • Sinkronisasi satu arah satu-ke-satu

  • Sinkronisasi satu arah satu-ke-banyak

  • Sinkronisasi satu arah bertingkat

  • Sinkronisasi satu arah banyak-ke-satu

Untuk informasi lebih lanjut, lihat Topologi Sinkronisasi.

Batasan

  • Ketidaksesuaian dengan Pemicu

    Jika Anda memilih database sebagai objek yang akan disinkronkan dan database tersebut berisi pemicu yang memperbarui tabel, inkonsistensi data mungkin terjadi. Untuk informasi lebih lanjut tentang cara menyelesaikan masalah ini, lihat Konfigurasikan Tugas Sinkronisasi atau Migrasi Data untuk Database Sumber yang Berisi Pemicu.

  • Batasan pada Operasi RENAME TABLE

    Operasi RENAME TABLE dapat menyebabkan inkonsistensi data antara database sumber dan kluster tujuan. Sebagai contoh, jika Anda memilih tabel sebagai objek dan mengubah nama tabel selama sinkronisasi data, data tabel tersebut tidak disinkronkan ke kluster tujuan. Untuk mencegah situasi ini, Anda dapat memilih database tempat tabel tersebut berada sebagai objek saat mengonfigurasi tugas sinkronisasi data.

Prosedur

  1. Beli instance sinkronisasi data. Untuk informasi lebih lanjut, lihat Beli Instance DTS.

    Catatan

    Di halaman pembelian, atur Instance Sumber ke MySQL, atur Instance Tujuan ke PolarDB, dan atur Topologi Sinkronisasi ke One-way Synchronization.

  2. Masuk ke atau Konsol DTS.

    Catatan

    Jika Anda dialihkan ke konsol Data Management (DMS), Anda dapat mengklik ikon old di image untuk kembali ke versi sebelumnya dari konsol DTS.

  3. Di panel navigasi di sebelah kiri, klik Data Synchronization.

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

  5. Temukan instance sinkronisasi data dan klik Configure Task di kolom Tindakan.

  6. Konfigurasikan instance sumber dan tujuan.

    Bagian

    Parameter

    Deskripsi

    Tidak ada

    Nama Tugas Sinkronisasi

    Nama tugas yang dihasilkan secara otomatis oleh DTS. Kami menyarankan Anda menentukan nama deskriptif yang memudahkan identifikasi tugas. Anda tidak perlu menggunakan nama tugas yang unik.

    Detail Instance Sumber

    Jenis Instance

    Pilih RDS Instance.

    Wilayah Instance

    Wilayah sumber yang Anda pilih di halaman pembelian. Nilai parameter ini tidak dapat diubah.

    Akun Database

    Akun database dari instance ApsaraDB RDS for MySQL sumber.

    Catatan
    • Akun harus memiliki izin SELECT pada objek yang akan disinkronkan dan izin REPLICATION CLIENT, REPLICATION SLAVE, dan SHOW VIEW.

    • Jika instance ApsaraDB RDS for MySQL sumber menjalankan MySQL 5.5 atau MySQL 5.6, Anda tidak perlu mengonfigurasi database account atau database password.

    Kata Sandi Database

    Kata sandi akun database.

    Enkripsi

    Pilih Non-encrypted atau SSL-encrypted. Jika Anda ingin memilih SSL-encrypted, Anda harus mengaktifkan enkripsi SSL untuk instance ApsaraDB RDS for MySQL sebelum mengonfigurasi tugas sinkronisasi data. Untuk informasi lebih lanjut, lihat Gunakan sertifikat cloud untuk mengaktifkan enkripsi SSL.

    Penting

    Parameter Encryption hanya tersedia di wilayah-wilayah di daratan Tiongkok dan wilayah China (Hong Kong).

    Detail Instance Tujuan

    Jenis Instance

    Parameter ini diatur ke PolarDB dan tidak dapat diubah.

    Wilayah Instance

    Wilayah tujuan yang Anda pilih di halaman pembelian. Nilai parameter ini tidak dapat diubah.

    ID Instance PolarDB

    ID kluster PolarDB for MySQL tujuan.

    Akun Database

    Akun database dari kluster PolarDB sumber.

    Catatan

    Akun database harus memiliki izin ALL pada objek yang akan disinkronkan.

    Kata Sandi Database

    Kata sandi akun database.

  7. Di sudut kanan bawah halaman, klik Set Whitelist and Next.

    Jika database sumber atau tujuan adalah instance database Alibaba Cloud, seperti instance ApsaraDB RDS for MySQL atau ApsaraDB for MongoDB, DTS secara otomatis menambahkan blok CIDR server DTS ke daftar putih alamat IP instance. Jika database sumber atau tujuan adalah database mandiri yang di-hosting pada instance Elastic Compute Service (ECS), DTS secara otomatis menambahkan blok CIDR server DTS ke aturan grup keamanan instance ECS, dan Anda harus memastikan bahwa instance ECS dapat mengakses database. Jika database mandiri di-hosting pada beberapa instance ECS, Anda harus secara manual menambahkan blok CIDR server DTS ke aturan grup keamanan setiap instance ECS. Jika database sumber atau tujuan adalah database mandiri yang ditempatkan di pusat data atau disediakan oleh penyedia layanan cloud pihak ketiga, Anda harus secara manual menambahkan blok CIDR server DTS ke daftar putih alamat IP database untuk mengizinkan DTS mengakses database. Untuk informasi lebih lanjut, lihat Tambahkan Blok CIDR Server DTS.

    Peringatan

    Jika blok CIDR server DTS secara otomatis atau manual ditambahkan ke daftar putih database atau instance, atau ke aturan grup keamanan ECS, risiko keamanan mungkin timbul. Oleh karena itu, sebelum Anda menggunakan DTS untuk menyinkronkan data, Anda harus memahami dan mengakui potensi risiko dan mengambil langkah-langkah pencegahan, termasuk tetapi tidak terbatas pada langkah-langkah berikut: meningkatkan keamanan nama pengguna dan kata sandi Anda, membatasi port yang diekspos, mengotentikasi panggilan API, secara berkala memeriksa daftar putih atau aturan grup keamanan ECS dan melarang blok CIDR yang tidak sah, atau menghubungkan database ke DTS dengan menggunakan Express Connect, VPN Gateway, atau Smart Access Gateway.

  8. Pilih mode pemrosesan tabel yang konflik dan objek yang akan disinkronkan.

    Parameter atau Pengaturan

    Deskripsi

    Mode Pemrosesan Tabel Target yang Sudah Ada

    • Pre-check and Intercept: Memeriksa apakah kluster tujuan berisi tabel yang memiliki nama yang sama dengan tabel di database sumber. Jika kluster tujuan tidak berisi tabel yang memiliki nama yang sama dengan tabel di database sumber, pemeriksaan awal berhasil. Jika tidak, kesalahan dikembalikan selama pemeriksaan awal dan tugas sinkronisasi data tidak dapat dimulai.

      Catatan

      Anda dapat menggunakan fitur pemetaan nama objek untuk mengubah nama tabel yang disinkronkan ke kluster tujuan. Anda dapat menggunakan fitur ini jika database sumber dan kluster tujuan berisi nama tabel yang identik dan tabel di kluster tujuan tidak dapat dihapus atau diubah namanya. Untuk informasi lebih lanjut, lihat Ubah Nama Objek yang Akan Disinkronkan.

    • Ignore: Melewati pemeriksaan awal untuk nama tabel yang identik di database sumber dan kluster tujuan.

      Peringatan

      Jika Anda memilih Ignore Errors and Proceed, konsistensi data tidak dijamin, dan bisnis Anda mungkin terpapar risiko potensial.

      • Selama sinkronisasi data awal, DTS tidak menyinkronkan catatan data yang memiliki kunci utama yang sama dengan catatan data di kluster tujuan. Ini terjadi jika database sumber dan kluster tujuan memiliki skema yang sama. Namun, DTS menyinkronkan catatan data ini selama sinkronisasi data tambahan.

      • Jika database sumber dan kluster tujuan memiliki skema yang berbeda, sinkronisasi data awal mungkin gagal. Dalam hal ini, hanya beberapa kolom yang disinkronkan atau tugas sinkronisasi data gagal.

    Pilih Objek yang Akan Disinkronkan

    Pilih satu atau lebih objek dari bagian Available dan klik ikon Rightwards arrow untuk menambahkan objek ke bagian Selected.

    Anda dapat memilih tabel atau database sebagai objek yang akan disinkronkan.

    Catatan
    • Jika Anda memilih database sebagai objek yang akan disinkronkan, semua perubahan skema di database disinkronkan ke kluster tujuan.

    • Secara default, setelah objek disinkronkan ke kluster tujuan, nama objek tetap tidak berubah. Anda dapat menggunakan fitur pemetaan nama objek untuk mengubah nama objek yang disinkronkan ke kluster tujuan. Untuk informasi lebih lanjut, lihat Ubah Nama Objek yang Akan Disinkronkan.

    Ubah Nama Database dan Tabel

    Anda dapat menggunakan fitur pemetaan nama objek untuk mengubah nama objek yang disinkronkan ke instance tujuan. Untuk informasi lebih lanjut, lihat Pemetaan Nama Objek.

    Tabel Sementara DDL Online di Tabel Sumber Apakah Anda ingin menyalin tabel sementara ke database tujuan selama DDL

    Jika Anda menggunakan DMS untuk melakukan operasi DDL online pada database sumber, Anda dapat menentukan apakah akan menyinkronkan tabel sementara yang dihasilkan oleh operasi DDL online.

    • Yes: DTS menyinkronkan data tabel sementara yang dihasilkan oleh operasi DDL online.

      Catatan

      Jika operasi DDL online menghasilkan sejumlah besar data, tugas sinkronisasi data mungkin tertunda.

    • No: DTS tidak menyinkronkan data tabel sementara yang dihasilkan oleh operasi DDL online. Hanya data DDL asli dari database sumber yang disinkronkan.

      Catatan

      Jika Anda memilih Tidak, tabel di database tujuan mungkin terkunci.

    Waktu Ulang untuk Koneksi Gagal

    Secara default, jika DTS gagal terhubung ke database sumber atau tujuan, DTS mencoba kembali dalam waktu 720 menit (12 jam) berikutnya. Anda dapat menentukan waktu percobaan ulang berdasarkan kebutuhan Anda. Jika DTS berhasil terhubung kembali ke database sumber dan tujuan dalam waktu yang ditentukan, DTS melanjutkan tugas sinkronisasi data. Jika tidak, tugas sinkronisasi data gagal.

    Catatan

    Saat DTS mencoba kembali koneksi, Anda akan dikenakan biaya untuk instance DTS. Kami menyarankan Anda menentukan waktu percobaan ulang berdasarkan kebutuhan bisnis Anda. Anda juga dapat melepaskan instance DTS sesegera mungkin setelah instance sumber dan tujuan dilepaskan.

  9. Di sudut kanan bawah halaman, klik Next.

  10. Pilih jenis sinkronisasi awal.

    Advanced settings

    Catatan

    Sinkronisasi awal mencakup sinkronisasi skema awal dan sinkronisasi data penuh awal. Jika Anda memilih Initial Schema Synchronization dan Initial Full Data Synchronization, DTS menyinkronkan skema dan data historis objek yang diperlukan sebelum DTS menyinkronkan data tambahan.

  11. Di sudut kanan bawah halaman, klik Precheck.

    Catatan
    • Sebelum Anda dapat memulai tugas sinkronisasi data, DTS melakukan pemeriksaan awal. Anda hanya dapat memulai tugas sinkronisasi data setelah tugas tersebut lulus pemeriksaan awal.

    • Jika tugas gagal lulus pemeriksaan awal, Anda dapat mengklik ikon 提示 di sebelah setiap item yang gagal untuk melihat detail.

      • Setelah Anda menyelesaikan masalah berdasarkan detail, mulai pemeriksaan awal baru.

      • Jika Anda tidak perlu menyelesaikan masalah, ignore the failed items dan initiate a new precheck.

  12. Tutup kotak dialog Precheck setelah pesan berikut ditampilkan: Precheck Passed. Kemudian, tugas sinkronisasi data dimulai.

  13. Tunggu hingga sinkronisasi awal selesai dan tugas sinkronisasi data memasuki keadaan Synchronizing.

    Anda dapat melihat status tugas sinkronisasi data di halaman Synchronization Tasks. View the status of a data synchronization task