全部产品
Search
文档中心

AnalyticDB:Gunakan DTS untuk menyinkronkan data dari database MySQL yang dikelola sendiri berbasis ECS ke instance AnalyticDB for PostgreSQL

更新时间:Jul 06, 2025

Topik ini menjelaskan cara menggunakan Data Transmission Service (DTS) untuk menyinkronkan data dari database MySQL yang dibuat pengguna dan di-hosting pada instance ECS ke instance AnalyticDB for PostgreSQL. DTS memfasilitasi transmisi data dan analisis terpusat data perusahaan.

Prasyarat

  • Database MySQL versi 5.1, 5.5, 5.6, 5.7, atau 8.0 telah dibuat dan di-hosting pada instance ECS.

  • Fitur binary logging diaktifkan untuk database sumber. Akun database dibuat untuk tugas sinkronisasi data. Untuk informasi lebih lanjut, lihat Buat akun untuk database MySQL yang dikelola sendiri dan konfigurasikan binary logging.

    Catatan

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

  • Tabel yang akan disinkronkan dari database sumber mengandung kunci utama.

  • Instance tujuan AnalyticDB for PostgreSQL telah dibuat. Untuk informasi lebih lanjut, lihat Buat instance AnalyticDB for PostgreSQL.

Perhatian

DTS menggunakan sumber daya baca dan tulis dari database sumber dan tujuan selama sinkronisasi data penuh awal. Hal ini dapat meningkatkan beban server database. Jika performa database tidak baik, 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 database sumber, tabel tidak memiliki kunci utama, atau deadlock terjadi di database tujuan. Sebelum Anda menyinkronkan data, evaluasi dampak sinkronisasi data terhadap performa database sumber dan tujuan. Kami menyarankan Anda menyinkronkan data selama jam-jam sepi. Sebagai contoh, Anda dapat menyinkronkan data ketika utilisasi CPU dari database sumber dan tujuan kurang dari 30%.

Batasan

  • Anda hanya dapat memilih tabel sebagai objek yang akan disinkronkan.

  • DTS tidak menyinkronkan jenis data berikut: BIT, VARBIT, GEOMETRY, ARRAY, UUID, TSQUERY, TSVECTOR, TXID_SNAPSHOT, dan POINT.

  • Indeks awalan tidak dapat disinkronkan. Jika database sumber mengandung indeks awalan, data mungkin gagal disinkronkan.

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

Operasi SQL yang dapat disinkronkan

  • Operasi DML: INSERT, UPDATE, dan DELETE

  • Operasi DDL: ADD COLUMN

    Catatan

    Operasi CREATE TABLE tidak didukung. Untuk menyinkronkan data dari tabel baru, Anda harus menambahkan tabel ke objek yang dipilih. Untuk informasi lebih lanjut, lihat Tambahkan objek ke tugas sinkronisasi data.

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

AnalyticDB for PostgreSQL

Database

Skema

Tabel

Tabel

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 AnalyticDB for PostgreSQL, dan atur Topologi Sinkronisasi ke One-Way Synchronization.

  2. Masuk ke 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 Synchronization Channel di kolom Tindakan.

  6. Konfigurasikan instance sumber dan tujuan.

    Configure the source and destination instances

    Bagian

    Parameter

    Deskripsi

    Tidak Ada

    Nama Tugas Sinkronisasi

    DTS secara otomatis menghasilkan nama tugas. Kami menyarankan Anda menentukan nama yang informatif agar mudah diidentifikasi. Anda tidak perlu menggunakan nama tugas yang unik.

    Detail Instance Sumber

    Jenis Instance

    Pilih User-Created Database in ECS Instance.

    Wilayah Instance

    Wilayah sumber yang Anda pilih di halaman pembelian. Anda tidak dapat mengubah nilai parameter ini.

    ID Instance

    Pilih ID instance ECS yang meng-hosting database MySQL yang dikelola sendiri.

    Jenis Database

    Nilai parameter ini diatur ke MySQL dan tidak dapat diubah.

    Nomor Port

    Masukkan nomor port layanan database sumber. Nomor port default adalah 3306.

    Akun Database

    Masukkan akun database MySQL yang dikelola sendiri.

    Catatan

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

    Kata Sandi Database

    Masukkan kata sandi akun database sumber.

    Detail Instance Tujuan

    Jenis Instance

    Nilai parameter ini diatur ke AnalyticDB for PostgreSQL dan tidak dapat diubah.

    Wilayah Instance

    Wilayah tujuan yang Anda pilih di halaman pembelian. Anda tidak dapat mengubah nilai parameter ini.

    ID Instance

    Pilih ID instance tujuan AnalyticDB for PostgreSQL.

    Nama Database

    Masukkan nama database tujuan.

    Akun Database

    Masukkan initial account dari instance AnalyticDB for PostgreSQL. Untuk informasi lebih lanjut, lihat Buat dan kelola akun database.

    Catatan

    Anda juga dapat memasukkan akun yang memiliki izin RDS_SUPERUSER. Untuk informasi lebih lanjut, lihat Kelola pengguna dan izin.

    Kata Sandi Database

    Masukkan kata sandi akun database tujuan.

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

    Catatan

    DTS menambahkan blok CIDR server DTS ke aturan masuk instance ECS dan daftar putih instance AnalyticDB for PostgreSQL. Ini memastikan bahwa server DTS dapat terhubung ke instance sumber dan tujuan.

  8. Pilih kebijakan sinkronisasi dan objek yang akan disinkronkan.

    Synchronize data from MySQL to AnalyticDB for PostgreSQL

    Pengaturan

    Parameter

    Deskripsi

    Pilih kebijakan sinkronisasi

    Sinkronisasi Awal

    Anda harus memilih kedua Initial Schema Synchronization dan Initial Full Data Synchronization dalam kebanyakan kasus. Setelah pra-pemeriksaan, DTS menyinkronkan skema dan data objek yang diperlukan dari instance sumber ke instance tujuan. Skema dan data ini merupakan dasar untuk sinkronisasi tambahan berikutnya.

    Mode Penanganan Tabel yang Konflik

    • Clear Target Table

      Mengabaikan item Schema Name Conflict selama pra-pemeriksaan. Menghapus data di tabel tujuan sebelum sinkronisasi data penuh awal. Jika Anda ingin menyinkronkan data bisnis setelah menguji tugas sinkronisasi data, Anda dapat memilih mode ini.

    • Ignore

      Mengabaikan item Schema Name Conflict selama pra-pemeriksaan. Menambahkan data ke data yang ada selama sinkronisasi data penuh awal. Jika Anda ingin menyinkronkan data dari beberapa tabel ke satu tabel, Anda dapat memilih mode ini.

    Jenis Sinkronisasi

    Pilih jenis operasi yang ingin Anda sinkronkan berdasarkan kebutuhan bisnis Anda.

    • Insert

    • Update

    • Delete

    • AlterTable

    Pilih objek yang akan disinkronkan

    Tidak Ada

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

    Catatan
    • Anda hanya dapat memilih tabel sebagai objek yang akan disinkronkan.

    • Anda dapat menggunakan fitur pemetaan nama objek untuk mengubah nama kolom yang disinkronkan ke database tujuan. Untuk informasi lebih lanjut, lihat Ubah nama objek yang akan disinkronkan.

    Ubah Nama Database dan Tabel

    Tidak Ada

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

    Replikasi Tabel Sementara Saat DMS Melakukan Operasi DDL

    Tidak Ada

    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

    Tidak Ada

    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 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 ulang berdasarkan kebutuhan bisnis Anda. Anda juga dapat melepaskan instance DTS sesegera mungkin setelah instance sumber dan tujuan dilepaskan.

  9. Tentukan kolom kunci utama dan kolom distribusi dari tabel yang ingin Anda sinkronkan ke instance AnalyticDB for PostgreSQL.

    Catatan

    Halaman pada langkah ini hanya muncul jika Anda memilih Initial Schema Synchronization. Untuk informasi lebih lanjut tentang kolom kunci utama dan kolom distribusi, lihat Kelola tabel dan Tentukan distribusi tabel.

  10. Di sudut kanan bawah halaman, klik Precheck.

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

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

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

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

  11. Tutup kotak dialog Precheck setelah pesan berikut ditampilkan: The precheck is passed. Kemudian, tugas sinkronisasi data dimulai.

  12. Tunggu hingga sinkronisasi awal selesai dan tugas sinkronisasi data berada dalam status Synchronizing.

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