All Products
Search
Document Center

Data Transmission Service:Migrasi database Oracle yang dikelola sendiri ke AnalyticDB for MySQL 3.0

Last Updated:Mar 29, 2026

Layanan Transmisi Data (DTS) melakukan migrasi data dari database Oracle yang dikelola sendiri ke kluster AnalyticDB for MySQL V3.0 dalam tiga fase: migrasi skema, migrasi data penuh, dan migrasi data inkremental. Menjalankan ketiga fase secara bersamaan memungkinkan layanan Anda tetap berjalan tanpa downtime selama proses migrasi.

Cara kerja

DTS menarik data dari sumber Oracle Anda dan menuliskannya ke AnalyticDB for MySQL dalam tiga fase berurutan:

  1. Schema migration — DTS mengonversi dan membuat struktur tabel di kluster tujuan. Foreign key tidak dimigrasikan.

  2. Full data migration — DTS menyalin seluruh data yang ada dari sumber ke tujuan. Operasi INSERT konkuren dapat menyebabkan fragmentasi tabel di kluster tujuan.

  3. Incremental data migration — DTS membaca redo log dan archive log Oracle untuk menangkap perubahan yang sedang berlangsung dan menerapkannya ke tujuan hampir secara real time. Hanya operasi DML (INSERT, UPDATE, DELETE) yang ditangkap.

Saat DTS menulis ke AnalyticDB for MySQL V3.0, pernyataan UPDATE secara otomatis dikonversi menjadi REPLACE INTO. Operasi UPDATE pada kunci primer dikonversi menjadi DELETE + INSERT.

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

  • Kluster AnalyticDB for MySQL V3.0 dengan kapasitas penyimpanan tersedia yang lebih besar daripada ukuran total database Oracle sumber. Lihat Buat kluster.

  • Database Oracle sumber berjalan dalam Mode ARSIPLOG dengan file log arsip dapat diakses dan periode retensi yang sesuai telah dikonfigurasi. Lihat Mengelola file log redo arsip.

  • Pencatatan tambahan diaktifkan pada database Oracle sumber, dengan SUPPLEMENTAL_LOG_DATA_PK dan SUPPLEMENTAL_LOG_DATA_UI diatur ke Yes. Jalankan perintah SQL berikut pada database Oracle sumber untuk mengaktifkan pencatatan arsip dan pencatatan tambahan:

    -- Aktifkan pencatatan arsip (memerlukan mode ARCHIVELOG)
    -- Verifikasi mode saat ini:
    SELECT LOG_MODE FROM V$DATABASE;
    
    -- Aktifkan pencatatan tambahan di tingkat database
    ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;
    
    -- Aktifkan pencatatan tambahan kunci primer
    ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS;
    
    -- Aktifkan pencatatan tambahan indeks unik
    ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (UNIQUE INDEX) COLUMNS;
    
    -- Verifikasi status pencatatan tambahan
    SELECT SUPPLEMENTAL_LOG_DATA_MIN,
           SUPPLEMENTAL_LOG_DATA_PK,
           SUPPLEMENTAL_LOG_DATA_UI
    FROM V$DATABASE;
    -- Yang diharapkan: SUPPLEMENTAL_LOG_DATA_PK = YES, SUPPLEMENTAL_LOG_DATA_UI = YES

    Untuk informasi lebih lanjut, lihat Pencatatan tambahan dan Konfigurasi database Oracle.

  • Pemahaman tentang kemampuan dan batasan DTS untuk migrasi database Oracle. Advanced Database & Application Migration (ADAM) digunakan untuk evaluasi database guna membantu memastikan migrasi lancar ke cloud. Lihat Persiapkan database Oracle dan Ikhtisar.

  • Akun database pada database Oracle sumber dengan izin yang diperlukan. Lihat Izin yang diperlukan.

  • Akun database pada kluster AnalyticDB for MySQL V3.0 tujuan dengan izin baca dan tulis.

Untuk versi database Oracle yang didukung, lihat Ikhtisar skenario migrasi data.

Izin yang diperlukan

Buat akun database untuk setiap database dan berikan izin berikut sebelum mengonfigurasi tugas migrasi. Lewati langkah ini jika akun tersebut sudah ada dengan izin yang sesuai.

DatabaseSchema migrationFull data migrationIncremental data migration
Database Oracle yang dikelola sendiriIzin pemilik skemaIzin pemilik skemaIzin detail halus
Kluster AnalyticDB for MySQL V3.0Izin baca dan tulis pada database tujuan

Untuk membuat akun dan memberikan izin:

Batasan

Tinjau batasan berikut sebelum mengonfigurasi tugas.

Selama migrasi skema, DTS tidak memigrasikan foreign key dari sumber ke tujuan.
Selama migrasi data penuh dan migrasi data inkremental, DTS sementara menonaktifkan pemeriksaan kendala dan operasi kaskade pada foreign key di tingkat sesi. Operasi update dan delete kaskade pada sumber selama migrasi dapat menyebabkan ketidakkonsistenan data.

Batasan database sumber

KategoriBatasan
BandwidthServer sumber harus memiliki bandwidth keluar yang mencukupi; jika tidak, kecepatan migrasi akan menurun.
Oracle RAC melalui Express ConnectTentukan alamat IP virtual (VIP) untuk database.
Oracle RAC melalui Express Connect, VPN Gateway, Smart Access Gateway, Database Gateway, atau Cloud Enterprise Network (CEN)Gunakan satu VIP, bukan alamat IP Single Client Access Name (SCAN). Setelah menentukan VIP, failover node tidak didukung untuk database Oracle RAC.
String kosong VARCHAR2Oracle mengevaluasi string VARCHAR2 kosong sebagai null. Jika bidang tujuan memiliki kendala NOT NULL, tugas migrasi gagal.
Kendala tabelTabel harus memiliki kendala PRIMARY KEY atau UNIQUE dengan semua bidang unik. Tanpa kendala ini, tujuan mungkin berisi catatan duplikat.
Oracle 12c dan versi setelahnyaNama tabel tidak boleh melebihi 30 byte.
Batasan penggantian nama tabelJika Anda memilih tabel sebagai objek migrasi dan perlu mengganti nama tabel atau kolom: satu tugas mendukung hingga 1.000 tabel. Untuk lebih dari 1.000 tabel, konfigurasikan beberapa tugas atau migrasikan seluruh database.
Migrasi inkremental: retensi logRedo log dan archive log harus disimpan selama minimal 7 hari. Periode retensi yang lebih pendek dapat menyebabkan tugas gagal, dan dalam kasus luar biasa, ketidakkonsistenan atau kehilangan data dapat terjadi. Jika periode retensi tidak mencukupi, perjanjian tingkat layanan (SLA) DTS tidak menjamin keandalan atau kinerja.
Migrasi inkremental: operasi sumberJangan gunakan Oracle Data Pump untuk menulis data ke sumber selama migrasi inkremental. Kehilangan data dapat terjadi.
DDL selama migrasiJangan lakukan operasi DDL yang mengubah skema database atau tabel selama migrasi skema atau migrasi data penuh. Tugas akan gagal.
Migrasi data penuh: penulisan sumberJangan menulis data ke sumber selama migrasi data penuh saja (tanpa migrasi inkremental). Ketidakkonsistenan data antara sumber dan tujuan dapat terjadi.

Batasan kluster tujuan

KategoriBatasan
Penggunaan diskJika penggunaan disk pada node mana pun di kluster AnalyticDB for MySQL V3.0 melebihi 80%, terjadi pengecualian pada tugas DTS dan tugas DTS tertunda. Perkirakan ruang yang dibutuhkan sebelum memulai dan pastikan kluster tujuan memiliki kapasitas penyimpanan yang cukup.
Kunci primerTentukan kunci primer khusus di database tujuan atau konfigurasikan Primary Key Column selama konfigurasi bidang tabel. Kunci primer yang tidak ada dapat menyebabkan kegagalan migrasi.
Konflik backupJika kluster tujuan menjalankan backup saat tugas DTS aktif, tugas DTS gagal.
Tabel eksternalTabel eksternal tidak dapat dimigrasikan.
Set karakterSet karakter database sumber dan tujuan harus kompatibel. Set karakter yang tidak kompatibel dapat menyebabkan ketidakkonsistenan data atau kegagalan tugas.
Zona waktuZona waktu database sumber dan tujuan harus sama.
Pemulihan tugas gagalDTS mencoba melanjutkan tugas yang gagal dalam 7 hari terakhir. Sebelum beralih beban kerja ke kluster tujuan, hentikan atau lepas tugas yang gagal, atau jalankan pernyataan REVOKE untuk mencabut izin tulis dari akun DTS. Jika tidak, tugas yang dilanjutkan dapat menimpa data tujuan.
Kegagalan eksekusi DDLJika pernyataan DDL gagal di tujuan, tugas DTS tetap berjalan. Lihat pernyataan yang gagal di log tugas. Lihat Lihat log tugas.
Migrasi skemaGunakan fitur migrasi skema DTS untuk menghindari kegagalan tugas akibat tipe data yang tidak kompatibel.
Dampak kinerjaMigrasi data penuh meningkatkan beban pada server sumber dan tujuan. Jalankan migrasi selama jam sepi.
Fragmentasi tabelOperasi INSERT konkuren selama migrasi data penuh menyebabkan fragmentasi tabel. Setelah migrasi data penuh, ruang tabel yang digunakan di tujuan lebih besar daripada di sumber.
Dukungan teknis DTSJika tugas DTS gagal, dukungan teknis mencoba memulihkannya dalam waktu 8 jam. Selama pemulihan, tugas mungkin dimulai ulang dan parameter tugas (bukan parameter database) mungkin dimodifikasi. Lihat Modifikasi parameter instans untuk parameter yang mungkin dimodifikasi.

Penagihan

Jenis migrasiBiaya konfigurasi instansBiaya lalu lintas internet
Migrasi skema dan migrasi data penuhGratisDikenakan biaya ketika Access Method untuk tujuan diatur ke Public IP Address. Lihat Ikhtisar penagihan.
Migrasi data inkrementalDikenakan biaya. Lihat Ikhtisar penagihan.

Operasi SQL yang didukung untuk migrasi inkremental

Jenis operasiPernyataan SQL
DMLINSERT, UPDATE, DELETE
Pernyataan UPDATE dikonversi menjadi REPLACE INTO saat ditulis ke AnalyticDB for MySQL V3.0. Operasi UPDATE pada kunci primer dikonversi menjadi DELETE + INSERT.

Pemetaan tipe data

Untuk pemetaan tipe data dari Oracle ke MySQL, lihat Pemetaan tipe data antar database heterogen.

Buat tugas migrasi

Prosedur ini terdiri dari lima langkah:

  1. Buka halaman Data Migration.

  2. Konfigurasi database sumber dan tujuan.

  3. Konfigurasi objek migrasi dan pengaturan lanjutan.

  4. Jalankan pemeriksaan awal dan beli instans.

  5. Pantau tugas migrasi.

Langkah 1: Buka halaman Data Migration

Gunakan salah satu metode berikut untuk membuka halaman Data Migration.

Konsol DTS

  1. Masuk ke Konsol DTS.

  2. Di panel navigasi kiri, klik Data Migration.

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

Konsol DMS

Operasi aktual dapat berbeda tergantung pada mode dan tata letak konsol DMS. Lihat Mode simple dan Sesuaikan tata letak dan gaya konsol DMS.
  1. Masuk ke Konsol DMS.

  2. Di bilah navigasi atas, arahkan kursor ke Data + AI > DTS (DTS) > Data Migration.

  3. Dari daftar drop-down di sebelah kanan Data Migration Tasks, pilih wilayah tempat instans migrasi berada.

Langkah 2: Konfigurasi database sumber dan tujuan

  1. Klik Create Task.

  2. Konfigurasi nama tugas dan database sumber.

    Peringatan

    Setelah mengonfigurasi database sumber dan tujuan, baca Batasan yang ditampilkan di bagian atas halaman sebelum melanjutkan.

    ParameterDeskripsi
    Task NameDTS menghasilkan nama secara otomatis. Tentukan nama deskriptif untuk mengidentifikasi tugas. Nama tidak perlu unik.
    Select Existing ConnectionPilih instans database terdaftar dari daftar, atau konfigurasi koneksi secara manual.
    Database TypePilih Oracle.
    Access MethodPilih metode akses untuk database sumber. Contoh ini menggunakan Self-managed Database on ECS. Untuk metode akses lainnya, lihat Ikhtisar persiapan.
    Instance RegionWilayah tempat database Oracle sumber berada.
    ECS Instance IDID instans Elastic Compute Service (ECS) yang menjalankan database Oracle sumber.
    Port NumberPort layanan database Oracle sumber. Default: 1521.
    Oracle TypePilih arsitektur database: Non-RAC Instance (memerlukan SID) atau RAC or PDB Instance (memerlukan Service Name). Contoh ini menggunakan RAC or PDB Instance.
    Database AccountAkun database Oracle sumber dengan izin yang diperlukan.
    Database PasswordKata sandi untuk akun database sumber.
  3. Konfigurasi database tujuan.

    ParameterDeskripsi
    Select Existing ConnectionPilih instans database terdaftar, atau konfigurasi koneksi secara manual.
    Database TypePilih AnalyticDB for MySQL 3.0.
    Access MethodPilih Alibaba Cloud Instance.
    Instance RegionWilayah tempat kluster AnalyticDB for MySQL V3.0 tujuan berada.
    Instance IDID kluster tujuan.
    Database AccountAkun database untuk kluster tujuan dengan izin baca dan tulis.
    Database PasswordKata sandi untuk akun database tujuan.
  4. Klik Test Connectivity and Proceed, lalu klik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers.

    Pastikan blok CIDR server DTS telah ditambahkan ke pengaturan keamanan database sumber dan tujuan. Lihat Tambahkan blok CIDR server DTS.

Langkah 3: Konfigurasi objek migrasi dan pengaturan lanjutan

  1. Di halaman Configure Objects, atur parameter migrasi.

    ParameterDeskripsi
    Migration TypesPilih jenis migrasi sesuai kebutuhan Anda: <br>- Schema Migration + Full Data Migration: memigrasikan data yang ada tanpa perubahan inkremental. <br>- Schema Migration + Full Data Migration + Incremental Data Migration: menjaga sinkronisasi tujuan selama migrasi, memungkinkan pergantian lancar tanpa downtime. <br><br>
    Catatan

    Jika Anda melewatkan Schema Migration, buat tabel target secara manual dan aktifkan pemetaan nama objek. Jika Anda melewatkan Incremental Data Migration, jangan menulis ke sumber selama migrasi.

    DDL and DML Operations to Be SynchronizedOperasi DDL atau DML yang akan dimigrasikan. Untuk memilih operasi untuk tabel tertentu, klik kanan tabel di Selected Objects.
    Merge TablesNo (default): memigrasikan tabel tanpa penggabungan. Yes: menambahkan kolom __dts_data_source ke setiap tabel dan menggabungkan semua tabel sumber yang dipilih menjadi satu tabel tujuan. Lihat Aktifkan fitur penggabungan multi-tabel. <br><br>
    Peringatan

    Jangan lakukan perubahan skema DDL pada tabel sumber saat Merge Tables diaktifkan.

    Processing Mode of Conflicting TablesPrecheck and Report Errors (default): gagal dalam pemeriksaan awal jika tabel tujuan memiliki nama yang sama dengan tabel sumber. Ignore Errors and Proceed: melewati pemeriksaan konflik nama. <br><br>
    Peringatan

    Memilih Ignore Errors and Proceed dapat menyebabkan ketidakkonsistenan data. Selama migrasi data penuh, catatan yang bertentangan dipertahankan di tujuan tanpa pembaruan. Selama migrasi inkremental, catatan yang bertentangan ditimpa.

    Capitalization of Object Names in Destination InstanceMengontrol kapitalisasi nama database, tabel, dan kolom di tujuan. Default: DTS default policy. Lihat Tentukan kapitalisasi nama objek di instans tujuan.
    Source ObjectsPilih objek yang akan dimigrasikan, lalu klik 向右小箭头 untuk memindahkannya ke Selected Objects. Kolom, tabel, dan database semuanya didukung.
    Selected ObjectsKlik kanan objek tunggal untuk mengganti namanya. Klik Edit di pojok kanan atas untuk mengganti nama beberapa objek sekaligus. Lihat Pemetaan nama database, tabel, dan kolom. <br><br>
    Catatan

    Mengganti nama objek dapat menyebabkan objek dependen gagal dimigrasikan. Untuk memfilter data tabel berdasarkan kondisi, klik kanan tabel dan tentukan kondisi WHERE. Lihat Tentukan kondisi filter.

  2. Klik Next: Advanced Settings dan konfigurasi parameter lanjutan.

    ParameterDeskripsi
    Dedicated Cluster for Task SchedulingDTS menggunakan kluster bersama secara default. Untuk menggunakan klaster khusus, lakukan pembelian secara terpisah. Lihat Apa itu klaster khusus DTS?
    Retry Time for Failed ConnectionsDurasi waktu DTS mencoba kembali koneksi yang gagal setelah tugas dimulai. Nilai yang valid: 10–1.440 menit. Default: 720 menit. Atur nilai lebih dari 30 menit. Jika DTS berhasil terhubung kembali dalam periode ini, tugas akan dilanjutkan; jika tidak, tugas gagal.
    Catatan

    Saat beberapa tugas berbagi sumber atau tujuan yang sama, waktu retry yang dikonfigurasi terakhir berlaku untuk semua tugas tersebut. DTS mengenakan biaya atas instans selama masa retry.

    Retry Time for Other IssuesDurasi waktu DTS mencoba kembali operasi DDL atau DML yang gagal. Nilai yang valid: 1–1.440 menit. Default: 10 menit. Atur nilai lebih dari 10 menit dan pastikan nilainya kurang dari Retry Time for Failed Connections.
    Enable Throttling for Full Data MigrationMembatasi penggunaan sumber daya baca/tulis selama migrasi data penuh. Konfigurasikan Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s). Opsi ini tersedia hanya jika Full Data Migration dipilih.
    Enable Throttling for Incremental Data MigrationMembatasi penggunaan sumber daya selama migrasi inkremental. Konfigurasikan RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s). Opsi ini tersedia hanya jika Incremental Data Migration dipilih.
    Environment TagTag opsional untuk mengidentifikasi instans DTS.
    Actual Write CodeFormat encoding untuk data yang ditulis ke tujuan.
    Configure ETLMengaktifkan fitur ekstrak, transformasi, dan muat (ETL). Lihat Apa itu ETL? dan Konfigurasi ETL dalam tugas migrasi data atau sinkronisasi data.
    Monitoring and AlertingMengonfigurasi notifikasi saat tugas gagal atau latensi melebihi ambang batas. Saat diaktifkan, tentukan ambang batas peringatan dan pengaturan notifikasi. Lihat Konfigurasi pemantauan dan peringatan saat membuat tugas DTS.
  3. Klik Next Step: Data Verification untuk mengonfigurasi tugas verifikasi data. Lihat Konfigurasi tugas verifikasi data.

  4. (Opsional) Klik Next: Configure Database and Table Fields untuk mengatur Type, Primary Key Column, Distribution Key, Partition Key, Partitioning Rules, dan Partition Lifecycle untuk setiap tabel di kluster tujuan.

    Langkah ini tersedia hanya jika Schema Migration dipilih. Atur Definition Status ke All untuk melihat dan memodifikasi semua bidang. Primary Key Column mendukung kunci primer komposit (beberapa kolom). Tentukan minimal satu kolom kunci primer sebagai Distribution Key dan Partition Key. Lihat CREATE TABLE.

Langkah 4: Jalankan pemeriksaan awal dan beli instans

  1. Klik Next: Save Task Settings and Precheck. DTS menjalankan pemeriksaan awal sebelum memulai migrasi. Atasi semua kegagalan sebelum melanjutkan:

    • Untuk item yang gagal, klik View Details untuk melihat penyebabnya, perbaiki masalah, lalu klik Precheck Again.

    • Untuk item peringatan yang tidak dapat diabaikan, klik View Details, perbaiki masalah, lalu jalankan ulang pemeriksaan awal.

    • Untuk item peringatan yang dapat diabaikan, klik Confirm Alert Details > Ignore > OK, lalu klik Precheck Again. Mengabaikan peringatan dapat menyebabkan ketidakkonsistenan data.

    Untuk melihat pratinjau parameter API untuk konfigurasi ini, arahkan kursor ke Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters.
  2. Tunggu hingga Success Rate mencapai 100%, lalu klik Next: Purchase Instance.

  3. Di halaman Purchase Instance, konfigurasi kelas instans.

    ParameterDeskripsi
    Resource GroupKelompok sumber daya untuk instans migrasi. Default: default resource group. Lihat Apa itu Manajemen Resource?
    Instance ClassKelas instans menentukan kecepatan migrasi. Lihat Kelas instans migrasi data.
  4. Baca dan terima Data Transmission Service (Pay-as-you-go) Service Terms, lalu klik Buy and Start > OK.

Langkah 5: Pantau tugas migrasi

Lihat progres tugas di halaman Data Migration.

  • Hanya migrasi penuh (tanpa inkremental): tugas berhenti otomatis saat selesai. Status menunjukkan Completed.

  • Dengan migrasi inkremental: tugas berjalan terus-menerus dan tidak berhenti otomatis. Status menunjukkan Running. Hentikan tugas secara manual setelah memverifikasi konsistensi data dan sebelum beralih beban kerja ke kluster tujuan.

Verifikasi hasil migrasi

Setelah tugas mencapai status Completed atau sebelum Anda beralih ke kluster tujuan, verifikasi bahwa data telah dimigrasikan dengan benar.

  1. Sambungkan ke kluster AnalyticDB for MySQL V3.0 tujuan.

  2. Bandingkan jumlah baris untuk tabel utama antara sumber dan tujuan:

    -- Jalankan di database Oracle sumber
    SELECT COUNT(*) FROM <schema_name>.<table_name>;
    
    -- Jalankan di kluster AnalyticDB for MySQL V3.0 tujuan
    SELECT COUNT(*) FROM <table_name>;
  3. Periksa sampel catatan untuk memastikan akurasi data.

  4. Tinjau log tugas DTS untuk peringatan atau error apa pun. Lihat Lihat log tugas.

Untuk migrasi heterogen yang melibatkan konversi tipe data, selalu verifikasi tabel kritis sebelum beralih.

Langkah selanjutnya