Saat DTS melakukan sinkronisasi atau migrasi data secara inkremental, sequence di database tujuan terus menghasilkan nilai secara independen dari sumber. Deviasi ini dapat menyebabkan konflik primary key jika sequence di tujuan menghasilkan nilai yang sudah ada dalam data yang dimigrasikan. Gunakan fitur penyesuaian nilai sequence untuk membaca nilai sequence saat ini dari database sumber, menambahkan offset yang Anda tentukan, lalu menetapkan hasilnya sebagai nilai awal masing-masing sequence yang sesuai di database tujuan.
Sebagai contoh, dengan offset 10.000: jika sebuah sequence di database sumber saat ini berada di angka 12.345, DTS akan menetapkan nilai awal sequence yang sesuai di database tujuan menjadi 22.345.
Pasangan database yang didukung
PostgreSQL dalam tabel berikut mengacu pada instans ApsaraDB RDS for PostgreSQL atau database PostgreSQL yang dikelola sendiri.
| Database sumber | Database tujuan | Referensi |
|---|---|---|
| PostgreSQL | PostgreSQL, PolarDB (Compatible with Oracle), atau PolarDB for PostgreSQL | Sinkronisasi data dari database PostgreSQL / Migrasi data dari database PostgreSQL |
| PolarDB for PostgreSQL | PostgreSQL atau PolarDB for PostgreSQL | Sinkronisasi data dari kluster PolarDB for PostgreSQL / Migrasi data dari kluster PolarDB for PostgreSQL |
| PolarDB (Compatible with Oracle) | PolarDB (Compatible with Oracle) | Sinkronisasi data satu arah antar kluster PolarDB for PostgreSQL (Kompatibel dengan Oracle) / Migrasi data antar kluster PolarDB for PostgreSQL (Kompatibel dengan Oracle) |
| Oracle | PolarDB (Compatible with Oracle) | Sinkronisasi data dari database Oracle yang dikelola sendiri ke kluster PolarDB for PostgreSQL (Kompatibel dengan Oracle) / Migrasi data dari database Oracle yang dikelola sendiri ke kluster PolarDB for PostgreSQL (Kompatibel dengan Oracle) |
Prasyarat
Sebelum memulai, pastikan bahwa:
Instans melibatkan sinkronisasi atau migrasi data inkremental.
Instans berada dalam fase Incremental Data Migration atau Incremental Data Synchronization.
Status instans adalah Running atau Paused.
Batasan
Tidak didukung untuk instans sinkronisasi dua arah.
Secara default, DTS memperbarui nilai awal sequence di database tujuan berdasarkan nilai saat ini dari sequence dengan nama yang sama di database sumber. Penyesuaian sequence secara individual tidak didukung.
Jika data inkremental ditulis ke database sumber setelah nilai awal sequence di database tujuan diperbarui, nilai sequence yang diperbarui mungkin tidak sesuai dengan ekspektasi Anda.
Perbarui nilai awal sequence
Buka halaman Data Synchronization atau Data Migration.
Gunakan konsol DTS
Masuk ke konsol DTS. Di panel navigasi kiri, klik Data Synchronization atau Data Migration. Pada bilah navigasi atas, pilih wilayah tempat instance DTS Anda berada.
Gunakan konsol DMS
Login ke konsol DMS. Di bilah navigasi atas, pilih Data + AI > DTS (DTS) > Data Synchronization Tasks atau Data + AI > DTS (DTS) > Data Migration Tasks. Dari daftar drop-down di sebelah kanan Data Synchronization Tasks atau Data Migration Tasks, pilih wilayah tempat instans DTS Anda berada.
Temukan instans DTS Anda dan klik ID instans tersebut.
Di halaman Task Management, klik Incremental Write.Data Management (DMS)
Di tab Basic Information, klik Synchronize Sequence.
Di kotak dialog, atur nilai Sequence Offset.
Klik Synchronize. Setelah pembaruan selesai, pesan Synchronized akan muncul dan nilai sequence sebelum serta sesudah pembaruan akan ditampilkan.
Klik Close.