All Products
Search
Document Center

Data Transmission Service:Konfigurasi sinkronisasi atau migrasi trigger

Last Updated:Aug 22, 2026

Memigrasikan trigger terlalu dini selama tugas sinkronisasi atau migrasi data dapat menyebabkan ketidakkonsistenan data antara database sumber dan tujuan. Topik ini menjelaskan cara mengonfigurasi sinkronisasi atau migrasi trigger untuk mencegah masalah tersebut.

Prasyarat

  • Database sumber dan tujuan harus berupa tipe yang didukung, misalnya dari instans ApsaraDB RDS for MariaDB ke instans ApsaraDB RDS for MySQL. Untuk informasi selengkapnya, lihat Instans yang didukung.

  • Instans dikonfigurasi untuk tugas skema maupun inkremental.

    • Instans migrasi: Untuk Migration Types, Anda harus memilih Schema Migration dan Incremental Data Migration.

    • Instans sinkronisasi: Untuk Synchronization Types, Incremental Data Synchronization dipilih secara default, dan Anda juga harus memilih Schema Synchronization.

  • Saat mengonfigurasi instans, Anda harus memilih objek untuk Source Objects pada tingkat seluruh database atau skema.

Instans yang didukung

Source database

Destination database

Description

MySQL, PolarDB for MySQL, MariaDB

MySQL, PolarDB for MySQL, MariaDB

Jika Method to Migrate Triggers in Source Database diatur ke Automatically Migrate, DTS menambahkan pernyataan kontrol ke trigger di database tujuan. Pernyataan ini mencegah trigger aktif secara default. Untuk informasi selengkapnya, lihat Automatic migration.

SQL Server

SQL Server

Jika Method to Migrate Triggers in Source Database diatur ke Automatically Migrate, DTS secara otomatis memigrasikan trigger ke database tujuan.

Penting

Jika perubahan data inkremental di database sumber menyebabkan trigger memperbarui data di kedua database (sumber dan tujuan), hal ini dapat menciptakan ketidakkonsistenan data di database tujuan. Kami menyarankan Anda memilih Manual Migration dan melakukan operasi lanjutan yang diperlukan.

Catatan
  • Jika database sumber dari instans sinkronisasi atau migrasi berisi trigger dan database tujuan merupakan instans PostgreSQL, PolarDB for PostgreSQL, atau PolarDB for PostgreSQL (Compatible with Oracle), DTS membantu mencegah ketidakkonsistenan data akibat sinkronisasi atau migrasi trigger selama instans berjalan.

    • Jika akun yang digunakan untuk database tujuan memiliki hak istimewa yang cukup, seperti akun istimewa atau akun super-istimewa, DTS secara otomatis menonaktifkan trigger pada tingkat session setelah trigger tersebut disinkronkan atau dimigrasikan ke database tujuan.

    • Jika akun database tujuan tidak memiliki hak istimewa yang cukup, pastikan parameter session_replication_role diatur ke replica di database tujuan selama instans berjalan.

  • Untuk instans sinkronisasi atau migrasi lain yang berisi trigger, lihat Bagaimana cara mengonfigurasi tugas sinkronisasi atau migrasi saat database sumber berisi trigger?

Konfigurasi instans

Pada langkah Configure Objects, pilih opsi untuk Method to Migrate Triggers in Source Database.

Catatan

Pada versi sebelumnya halaman konfigurasi, opsi ini terdapat pada langkah Configure Objects and Advanced Settings.

  • Pilih Manual Migration: Selama migrasi skema, DTS menghasilkan peringatan object ignored due to incremental migration is enabled untuk setiap trigger yang ditemukan dan tidak memigrasikannya ke database tujuan. Anda harus secara manual menyinkronkan atau memigrasikan trigger dari database sumber ke database tujuan sebelum mengakhiri tugas inkremental. Untuk informasi selengkapnya, lihat Manual migration.

  • Pilih Automatically Migrate: Tidak diperlukan tindakan tambahan.

Migrasi manual

Catatan

Prosedurnya serupa untuk instans sinkronisasi dan migrasi. Bagian ini menggunakan instans sinkronisasi sebagai contoh.

  1. Buka halaman daftar tugas sinkronisasi di wilayah tujuan. Anda dapat menggunakan salah satu dari dua metode berikut:

    Dari konsol DTS

    1. Masuk ke Data Transmission Service (DTS) console.

    2. Di panel navigasi kiri, klik Data Synchronization.

    3. Di pojok kiri atas halaman, pilih wilayah tempat instans sinkronisasi berada.

    Dari konsol DMS

    Catatan

    Operasi aktual dapat berbeda tergantung pada mode dan tata letak konsol DMS. Untuk informasi selengkapnya, lihat Simple mode dan Customize the layout and style of the DMS interface.

    1. Masuk ke Data Management (DMS).

    2. Di bilah menu atas, pilih Data + AI > Data Transmission (DTS) > Data Synchronization.

    3. Di sebelah kanan Data Synchronization Tasks, pilih wilayah tempat instans sinkronisasi berada.

  2. Klik ID instans target.

  3. Opsional: Di panel navigasi kiri, klik Task Management.

  4. Di bagian Progress, klik modul Incremental Write.

  5. Di tab Basic Information, klik Migrate Triggers.

    Catatan

    Jika tombol Migrate Triggers tidak ditampilkan, berarti tidak ada trigger yang ditemukan selama migrasi skema.

    Anda dapat melihat hasil sinkronisasi trigger di bagian Progress, dalam modul Schema Migration3.

Migrasi otomatis

DTS menyalin kode trigger dari database sumber, menambahkan pernyataan kontrol ke header trigger, lalu menulis kode yang telah dimodifikasi tersebut ke database tujuan. Kode berikut menunjukkan contohnya:

Trigger database sumber:

CREATE TRIGGER testref BEFORE INSERT ON test1
  FOR EACH ROW
  BEGIN
    INSERT INTO test2 SET a2 = NEW.a1;
  END;

Trigger database tujuan:

CREATE TRIGGER testref BEFORE INSERT ON test1
  FOR EACH ROW
  BEGIN
    IF (SELECT @`__#aliyun_dts_writer#__) IS NULL THEN
        INSERT INTO test2 SET a2 = NEW.a1;
    END IF;
  END;

Migrasi otomatis hanya mengubah cara DTS memproses trigger. Fitur ini tidak berdampak pada sinkronisasi data inkremental. Apakah sinkronisasi data inkremental terjadi atau tidak ditentukan oleh apakah Anda memilih Incremental Data Migration di bawah Migration Types. Jika Anda memilih Schema Migration, migrasi data penuh, dan Incremental Data Migration, DTS secara otomatis menyinkronkan data baru dari database sumber ke database tujuan setelah migrasi data penuh selesai.

FAQ

  • Apa yang dimaksud dengan tugas yang mencakup operasi skema dan inkremental?

    Untuk instans sinkronisasi, ini berarti Schema Synchronization dan Incremental Data Synchronization keduanya dipilih di bawah Synchronization Types. Untuk instans migrasi, ini berarti Schema Migration dan Incremental Data Migration keduanya dipilih di bawah Migration Types.

  • Bagaimana cara mengakhiri tugas inkremental?

    Anda dapat mengakhiri tugas inkremental dengan menghentikan, mereset, atau melepas instans. Untuk informasi selengkapnya, lihat Terminate a DTS instance, Reset a DTS instance, dan Release a DTS instance.