全部产品
Search
文档中心

Data Transmission Service:Konfigurasikan sinkronisasi data satu arah antara instance ApsaraDB RDS for MySQL

更新时间:Jul 02, 2025

Data Transmission Service (DTS) mendukung sinkronisasi data antara dua database MySQL. Topik ini menjelaskan cara mengonfigurasi sinkronisasi data satu arah antara dua instance ApsaraDB RDS for MySQL.

Prasyarat

  • Instance ApsaraDB RDS sumber dan tujuan telah dibuat. Untuk informasi lebih lanjut, lihat atau Buat Instance ApsaraDB RDS for MySQL.

  • Mesin database dari instance ApsaraDB RDS sumber dan tujuan adalah MySQL.

Peringatan

  • DTS menggunakan sumber daya baca dan tulis dari database sumber dan tujuan selama sinkronisasi data penuh awal. Hal ini dapat meningkatkan beban pada server database. Jika performa atau spesifikasi database tidak memadai, atau volume data besar, layanan database mungkin menjadi tidak tersedia. Misalnya, DTS menggunakan sejumlah besar sumber daya baca dan tulis dalam kasus berikut: banyak kueri SQL lambat dilakukan pada database sumber, tabel tidak memiliki kunci utama, atau terjadi deadlock di database tujuan. Sebelum menyinkronkan data, evaluasi dampak sinkronisasi data pada performa database sumber dan tujuan. Kami menyarankan Anda untuk menyinkronkan data selama jam non-puncak. Misalnya, Anda dapat menyinkronkan data ketika utilisasi CPU dari database 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.

  • Jika Anda hanya menggunakan DTS untuk menulis data ke database tujuan, Anda dapat menggunakan Data Management (DMS) untuk melakukan operasi DDL online selama sinkronisasi data. Untuk informasi lebih lanjut, lihat Lakukan Operasi DDL tanpa Kunci.

  • Tabel yang akan dimigrasikan di database sumber harus memiliki batasan PRIMARY KEY atau UNIQUE dan semua bidang harus unik. Jika tidak, database tujuan mungkin berisi catatan data duplikat.

  • Selama sinkronisasi data penuh awal, operasi INSERT bersamaan menyebabkan fragmentasi di tabel instance tujuan. Setelah sinkronisasi data penuh awal selesai, ukuran tablespace yang digunakan oleh instance tujuan lebih besar daripada instance sumber.

  • Jika database tujuan adalah instance ApsaraDB RDS for MySQL yang menjalankan MySQL 5.7 atau 8.0, DTS membuat akun database dtssyncwriter yang memiliki izin tulis dan eksklusif untuk DTS di database tujuan.

Penagihan

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

Topologi sinkronisasi yang didukung

  • Sinkronisasi satu arah satu-ke-satu

  • Sinkronisasi satu arah satu-ke-banyak

  • Sinkronisasi satu arah kaskade

  • Sinkronisasi satu arah banyak-ke-satu

Untuk informasi lebih lanjut tentang topologi sinkronisasi yang didukung oleh DTS, lihat Topologi Sinkronisasi.

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. Misalnya, jika Anda memilih tabel sebagai objek yang akan disinkronkan dan mengubah nama tabel selama sinkronisasi data, data dari tabel ini tidak disinkronkan ke database tujuan. Untuk mencegah situasi ini, Anda dapat memilih database tempat tabel ini berada sebagai objek yang akan disinkronkan saat Anda mengonfigurasi tugas sinkronisasi data. Pastikan bahwa database tempat tabel berada sebelum dan sesudah operasi RENAME TABLE ditambahkan ke objek yang akan disinkronkan.

  • TRUNCATE TABLE

Batasan

  • Ketidakcocokan 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 tujuan. Misalnya, jika hanya Tabel A yang dipilih sebagai objek yang akan disinkronkan dan diubah namanya menjadi Tabel B, Tabel B tidak dapat disinkronkan ke database tujuan. Untuk mencegah situasi ini, Anda dapat memilih seluruh database tempat Tabel A berada sebagai objek yang akan disinkronkan saat mengonfigurasi tugas sinkronisasi data.

Prosedur

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

    Catatan

    Atur baik Instance Sumber maupun Instance Tujuan ke MySQL dan atur Topologi Sinkronisasi ke One-way Synchronization.

  2. Pergi ke atau Konsol DTS.

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

  4. Di bagian atas halaman Data Synchronization Tasks, pilih wilayah tempat instance sinkronisasi data berada.

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

  6. Konfigurasikan instance sumber dan tujuan.

    Configure the source and destination instances

    Bagian

    Parameter

    Deskripsi

    Tidak Ada

    Nama Tugas

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

    Database Sumber

    Tipe Database

    Pilih MySQL.

    Wilayah Instance

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

    ID Instance RDS

    ID instance ApsaraDB RDS sumber.

    Akun Database

    Akun database dari instance ApsaraDB RDS sumber.

    Catatan

    Jika mesin database dari instance ApsaraDB RDS sumber adalah MySQL 5.5 atau MySQL 5.6, Anda tidak perlu mengonfigurasi parameter Database Account atau Database Password.

    Kata Sandi Database

    Kata sandi dari akun database.

    Enkripsi

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

    Penting

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

    Database Tujuan

    Tipe Database

    Pilih MySQL.

    Wilayah Instance

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

    ID Instance RDS

    ID instance ApsaraDB RDS tujuan.

    Akun Database

    Akun database dari instance ApsaraDB RDS tujuan.

    Catatan

    Jika mesin database dari instance ApsaraDB RDS tujuan adalah MySQL 5.5 atau MySQL 5.6, Anda tidak perlu mengonfigurasi parameter Database Account atau Database Password.

    Kata Sandi Database

    Kata sandi dari akun database.

    Enkripsi

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

    Penting

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

  7. Di pojok 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 yang dikelola sendiri yang dihosting 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 yang dikelola sendiri dihosting 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 yang dikelola sendiri 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 menggunakan DTS untuk menyinkronkan data, Anda harus memahami dan mengakui potensi risiko dan mengambil 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 kebijakan sinkronisasi dan objek yang akan disinkronkan.

    Select objects for a one-way data synchronization task

    Parameter/Pengaturan

    Deskripsi

    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 database tujuan.

    • Secara default, setelah objek disinkronkan ke database tujuan, nama objek tetap tidak berubah. Anda dapat menggunakan fitur pemetaan nama objek untuk mengganti nama objek yang disinkronkan ke instance tujuan. Untuk informasi lebih lanjut, lihat Ganti nama objek yang akan disinkronkan.

    Ganti Nama Database dan Tabel

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

    Replikasi Tabel Sementara Saat DMS Melakukan Operasi 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 lagi dalam waktu 720 menit (12 jam) ke depan. Anda dapat menentukan waktu 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 ulang koneksi, Anda dikenakan biaya untuk instance DTS. Kami menyarankan Anda menentukan waktu ulang berdasarkan kebutuhan bisnis Anda. Anda juga dapat melepaskan instance DTS secepat mungkin setelah instance sumber dan tujuan dilepaskan.

  9. Di pojok kanan bawah halaman, klik Next.

  10. Pilih jenis sinkronisasi awal.

    Advanced Settings

    Catatan
    • Selama sinkronisasi awal, DTS menyinkronkan skema dan data objek yang diperlukan dari instance sumber ke instance tujuan. Skema dan data ini adalah dasar untuk sinkronisasi tambahan berikutnya.

    • Sinkronisasi awal mencakup sinkronisasi skema awal dan sinkronisasi data penuh awal. Dalam kebanyakan kasus, Anda harus memilih kedua Initial Schema Synchronization dan Initial Full Data Synchronization.

  11. Di pojok 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, klik ikon Info icon di sebelah setiap item yang gagal untuk melihat detailnya.

      • Setelah Anda menyelesaikan masalah berdasarkan penyebabnya, jalankan pemeriksaan awal lagi.

      • Jika Anda tidak perlu menangani masalah tersebut, abaikan item yang gagal dan jalankan pra-pemeriksaan kembali.

  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 status Synchronizing.

    Anda dapat melihat status tugas sinkronisasi data di halaman Synchronization Tasks.

    State of the data synchronization task