全部产品
Search
文档中心

Data Transmission Service:Migrasi data dari RDS MySQL ke ApsaraDB for SelectDB

更新时间:Dec 28, 2025

ApsaraDB for SelectDB menyediakan respons dalam waktu kurang dari satu detik untuk kueri data skala besar, mendukung kueri titik berkonkurensi tinggi hingga puluhan ribu permintaan, serta memungkinkan analitik kompleks ber-throughput tinggi. Anda dapat menggunakan Data Transmission Service (DTS) untuk memigrasikan database MySQL—seperti MySQL yang dikelola sendiri atau RDS for MySQL—ke ApsaraDB for SelectDB guna memenuhi kebutuhan analitik data skala besar Anda. Topik ini menjelaskan prosedur dengan menggunakan instans RDS MySQL sebagai contoh.

Prasyarat

Anda telah membuat instans sumber RDS MySQL dan instans tujuan ApsaraDB for SelectDB.

Catatan

Jenis

Deskripsi

Batasan database sumber

  • Persyaratan bandwidth: Server yang meng-host database sumber harus memiliki bandwidth outbound yang cukup. Jika tidak, kecepatan migrasi akan terpengaruh.

  • Persyaratan objek migrasi:

    • Semua tabel yang akan dimigrasikan memiliki primary key atau kendala UNIQUE:

      Pastikan field tabel bersifat unik. Jika tidak, data duplikat mungkin ada di database tujuan.

    • Objek migrasi mencakup tabel yang tidak memiliki primary key maupun kendala UNIQUE:

      Saat mengonfigurasi instans, kami menyarankan Anda memilih Schema Migration untuk Migration Types dan, pada langkah Configurations for Databases, Tables, and Columns, atur Engine tabel ke duplicate. Jika tidak, instans mungkin gagal atau terjadi kehilangan data.

      Catatan

      Selama schema migration, DTS menambahkan field ke tabel tujuan. Untuk informasi selengkapnya, lihat Additional columns.

  • Jika Anda memigrasikan objek pada level tabel dan perlu mengeditnya, seperti pemetaan nama tabel atau kolom, satu tugas migrasi data mendukung maksimal 1.000 tabel. Jika melebihi batas ini, kesalahan akan dilaporkan saat Anda mengirimkan tugas. Dalam kasus ini, bagi tabel menjadi beberapa tugas migrasi, atau konfigurasikan satu tugas untuk memigrasikan seluruh database.

  • Jika Anda melakukan migrasi inkremental, perhatikan hal berikut untuk log biner:

    • Pencatatan log biner harus diaktifkan. Parameter binlog_format harus diatur ke row, dan parameter binlog_row_image harus diatur ke full. Jika tidak, pemeriksaan awal gagal, dan tugas migrasi data tidak dapat dimulai.

      Penting

      Jika database MySQL yang dikelola sendiri berada dalam kluster dual-primary di mana setiap instans merupakan primary dan secondary satu sama lain, Anda harus mengaktifkan parameter log_slave_updates. Hal ini memastikan DTS dapat memperoleh semua log biner.

    • Log biner instans RDS for MySQL harus disimpan minimal selama 3 hari. Kami menyarankan agar Anda menyimpannya selama 7 hari. Log biner database MySQL yang dikelola sendiri harus disimpan minimal selama 7 hari. Jika tidak, DTS mungkin gagal karena tidak dapat memperoleh log biner. Dalam kasus ekstrem, hal ini dapat menyebabkan ketidakkonsistenan data atau kehilangan data. Masalah yang disebabkan oleh periode retensi log biner lebih pendek dari periode yang dipersyaratkan tidak dicakup oleh Perjanjian Tingkat Layanan (SLA) DTS.

      Catatan

      Untuk informasi selengkapnya tentang cara mengatur Retention Period untuk log biner instans RDS for MySQL, lihat Automatically delete binary logs.

  • Selama fase schema migration dan full migration, jangan lakukan operasi DDL yang mengubah skema database atau tabel. Jika tidak, tugas migrasi data akan gagal.

    Catatan

    Selama fase full migration, DTS melakukan kueri ke database sumber. Hal ini membuat kunci metadata, yang mungkin memblokir operasi DDL pada database sumber.

  • Jika Anda hanya melakukan migrasi data penuh, jangan menulis data baru ke database sumber. Jika tidak, ketidakkonsistenan data akan terjadi antara database sumber dan tujuan. Untuk menjaga konsistensi data secara real-time, pilih schema migration, full data migration, dan incremental data migration.

  • Perubahan data dari operasi yang tidak dicatat dalam log biner selama migrasi tidak dimigrasikan ke database tujuan. Contoh operasi tersebut termasuk pemulihan data menggunakan backup fisik dan operasi kaskade.

    Catatan

    Jika hal ini terjadi, Anda dapat melakukan migrasi data penuh lagi ketika bisnis Anda mengizinkan.

  • Jika database sumber adalah MySQL 8.0.23 atau versi yang lebih baru dan data yang akan dimigrasikan berisi kolom tak terlihat (invisible columns), kehilangan data mungkin terjadi karena data dalam kolom tersebut tidak dapat diperoleh.

    Catatan

    Anda dapat menjalankan perintah ALTER TABLE <table_name> ALTER COLUMN <column_name> SET VISIBLE; untuk membuat kolom tak terlihat menjadi terlihat. Untuk informasi selengkapnya, lihat Invisible Columns.

Batasan lainnya

  • Saat ini, Anda hanya dapat memigrasikan data ke tabel yang menggunakan engine Unique atau Duplicate di instans SelectDB.

    Tabel tujuan menggunakan engine Unique

    Jika tabel tujuan menggunakan engine Unique, pastikan bahwa semua kunci unik di tabel tujuan juga ada di tabel sumber dan termasuk dalam objek migrasi. Jika tidak, ketidakkonsistenan data mungkin terjadi.

    Tabel tujuan menggunakan engine Duplicate

    Jika tabel tujuan menggunakan engine Duplicate, data duplikat mungkin ada di database tujuan dalam kasus berikut. Anda dapat menghapus data duplikat berdasarkan kolom tambahan (_is_deleted, _version, dan _record_id):

    • Instans migrasi diulang (retried).

    • Instans migrasi dimulai ulang (restarted).

    • Setelah instans migrasi dimulai, dua atau lebih operasi DML dilakukan pada catatan data yang sama yang akan dimigrasikan.

      Catatan

      Ketika tabel tujuan menggunakan engine Duplicate, DTS mengonversi pernyataan UPDATE atau DELETE menjadi pernyataan INSERT.

  • Anda tidak dapat memigrasikan objek INDEX, PARTITION, VIEW, PROCEDURE, FUNCTION, TRIGGER, atau FK.

  • Saat mengonfigurasi parameter di kotak Selected Objects, saat ini Anda hanya dapat mengatur parameter bucket_count (jumlah bucket).

    Catatan

    Nilai parameter bucket_count hanya boleh berupa bilangan bulat positif. Nilai default-nya adalah auto.

  • Selama migrasi data, jangan membuat kluster baru di instans SelectDB tujuan. Jika tidak, tugas akan gagal. Anda dapat mencoba memulai ulang instans migrasi untuk memulihkan tugas yang gagal.

  • Instans SelectDB hanya mendukung nama database dan tabel yang dimulai dengan huruf. Jika nama database atau tabel yang akan dimigrasikan tidak dimulai dengan huruf, Anda harus menggunakan fitur pemetaan untuk mengubah namanya.

  • Jika nama objek migrasi (database, tabel, atau kolom) berisi karakter Tionghoa, Anda harus menggunakan fitur pemetaan untuk mengubah namanya, misalnya ke bahasa Inggris. Jika tidak, tugas mungkin gagal.

  • Anda tidak dapat memigrasikan operasi DDL yang memodifikasi beberapa kolom sekaligus atau operasi DDL yang terus-menerus memodifikasi tabel yang sama.

  • Selama migrasi data, jangan menambahkan node backend (BE) ke database SelectDB. Jika tidak, tugas akan gagal. Anda dapat mencoba memulai ulang instans migrasi untuk memulihkan tugas yang gagal.

  • Dalam skenario penggabungan multi-tabel, di mana data dari beberapa tabel sumber dimigrasikan ke satu tabel tujuan, pastikan bahwa tabel sumber memiliki skema yang sama. Jika tidak, ketidakkonsistenan data atau kegagalan tugas mungkin terjadi.

  • Di MySQL, M dalam VARCHAR(M) menentukan panjang karakter. Di SelectDB, N dalam VARCHAR(N) menentukan panjang byte. Jika Anda tidak menggunakan fitur schema migration DTS, kami menyarankan agar Anda mengatur panjang field VARCHAR di SelectDB menjadi empat kali panjang field VARCHAR yang sesuai di MySQL.

  • Saat Anda melakukan perubahan DDL online pada sumber menggunakan DMS atau alat gh-ost, DTS hanya memigrasikan pernyataan DDL aslinya ke tujuan. Dalam skenario ini, DTS tidak perlu memigrasikan data tabel sementara dalam jumlah besar, tetapi hal ini mungkin menyebabkan tabel terkunci di tujuan.

    Catatan

    Migrasi perubahan DDL online yang dilakukan menggunakan alat seperti pt-online-schema-change pada sumber tidak didukung. Jika perubahan semacam itu ada di sumber, hal ini mungkin menyebabkan kehilangan data di tujuan atau kegagalan instans migrasi.

  • Sebelum memigrasikan data, evaluasi performa database sumber dan tujuan. Kami menyarankan agar Anda melakukan migrasi data selama jam sepi. Jika tidak, sinkronisasi data penuh awal akan mengonsumsi sumber daya baca dan tulis pada kedua database, yang mungkin meningkatkan beban kerja database.

  • Sinkronisasi penuh awal mengeksekusi operasi INSERT secara konkuren. Hal ini menyebabkan fragmentasi tabel di database tujuan. Akibatnya, ruang tabel instans tujuan lebih besar daripada instans sumber setelah sinkronisasi penuh awal selesai.

  • Selama migrasi data, jangan gunakan alat seperti pt-online-schema-change untuk melakukan perubahan DDL online pada objek migrasi di database sumber. Jika tidak, migrasi akan gagal.

  • Selama migrasi data, jika data ditulis ke database tujuan dari sumber selain DTS, ketidakkonsistenan data mungkin terjadi antara database sumber dan tujuan.

  • Jika fitur always-encrypted (EncDB) diaktifkan untuk instans RDS for MySQL, migrasi data penuh tidak didukung.

    Catatan

    Instans RDS for MySQL dengan Enkripsi Data Transparan (TDE) yang diaktifkan mendukung schema migration, full data migration, dan incremental data migration.

  • Jika suatu instans gagal, tim helpdesk DTS akan mencoba memulihkan instans tersebut dalam waktu 8 jam. Selama proses pemulihan, operasi seperti memulai ulang instans atau menyesuaikan parameternya mungkin dilakukan.

    Catatan

    Saat parameter disesuaikan, hanya parameter instans DTS yang dimodifikasi. Parameter di database tidak dimodifikasi. Parameter yang mungkin dimodifikasi mencakup, namun tidak terbatas pada, yang dijelaskan dalam Modify instance parameters.

Kasus khusus

  • Saat database sumber adalah database MySQL yang dikelola sendiri:

    • Alih bencana (switchover) primary/secondary di database sumber selama migrasi menyebabkan tugas migrasi gagal.

    • Latensi DTS dihitung dengan membandingkan timestamp catatan data terakhir yang dimigrasikan dengan timestamp saat ini. Jika tidak ada operasi DML yang dilakukan pada database sumber dalam waktu lama, informasi latensi mungkin tidak akurat. Jika latensi yang ditampilkan terlalu tinggi, Anda dapat melakukan operasi DML pada database sumber untuk memperbarui informasi latensi.

      Catatan

      Jika Anda memilih untuk memigrasikan seluruh database, Anda juga dapat membuat tabel heartbeat. Tabel heartbeat diperbarui atau ditulis setiap detik.

    • DTS secara berkala menjalankan perintah CREATE DATABASE IF NOT EXISTS `test` pada database sumber untuk memajukan offset log biner.

    • Jika database sumber adalah instans Amazon Aurora MySQL atau instans MySQL terklaster lainnya, pastikan nama domain atau alamat IP yang dikonfigurasi untuk tugas dan hasil resolusinya selalu mengarah ke node read/write (RW). Jika tidak, tugas migrasi mungkin tidak berjalan sesuai harapan.

  • Saat database sumber adalah instans RDS for MySQL:

    • Untuk memigrasikan data inkremental, instans RDS for MySQL yang tidak mencatat log transaksi, seperti instans hanya baca RDS for MySQL 5.6, tidak dapat digunakan sebagai database sumber.

    • DTS secara berkala menjalankan perintah CREATE DATABASE IF NOT EXISTS `test` pada database sumber untuk memajukan offset log biner.

Rincian penagihan

Jenis migrasi

Biaya konfigurasi tautan

Biaya transfer data

Schema migration dan full data migration

Gratis.

Contoh ini gratis.

Catatan

Ketika Access Method database tujuan adalah Public IP Address, biaya transfer data berlaku. Untuk informasi selengkapnya, lihat Billing overview.

Incremental data migration

Dikenai biaya. Untuk informasi selengkapnya, lihat Billing overview.

Pernyataan SQL yang didukung untuk migrasi inkremental

Jenis operasi

Pernyataan SQL

DML

INSERT, UPDATE, DELETE

DDL

  • ADD COLUMN

  • MODIFY COLUMN

  • CHANGE COLUMN

  • DROP COLUMN, DROP TABLE

  • TRUNCATE TABLE

  • RENAME TABLE

    Penting

    Operasi RENAME TABLE mungkin menyebabkan ketidakkonsistenan data antara database sumber dan tujuan. Misalnya, jika Anda memilih sebuah tabel sebagai objek yang akan dimigrasikan dan mengganti nama tabel tersebut selama migrasi data, data tabel tersebut tidak dimigrasikan ke database tujuan. Untuk mencegah situasi ini, Anda dapat memilih database tempat tabel tersebut berada sebagai objek yang akan dimigrasikan saat mengonfigurasi tugas migrasi data. Pastikan bahwa database tempat tabel tersebut berada sebelum dan sesudah operasi RENAME TABLE ditambahkan ke objek yang akan dimigrasikan.

Izin yang diperlukan untuk akun database

Database

Schema migration

Full migration

Incremental migration

Sumber RDS MySQL

Izin SELECT

Izin SELECT

Baca/tulis

Tujuan SelectDB

Izin akses kluster (Usage_priv) dan izin baca/tulis database (Select_priv, Load_priv, Alter_priv, Create_priv, Drop_priv)

Untuk membuat akun database dan memberikan izin:

Catatan

Jika akun database sumber tidak dibuat dan diberikan izin di konsol RDS MySQL, pastikan akun tersebut memiliki izin REPLICATION CLIENT, REPLICATION SLAVE, SHOW VIEW, dan SELECT.

Prosedur

  1. Gunakan salah satu metode berikut untuk membuka halaman Data Migration dan pilih wilayah tempat instans migrasi data berada.

    Konsol DTS

    1. Masuk ke DTS console.

    2. Di panel navigasi sebelah kiri, klik Data Migration.

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

    Konsol DMS

    Catatan

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

    1. Masuk ke DMS console.

    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 sinkronisasi data berada.

  2. Klik Create Task untuk membuka halaman konfigurasi tugas.

  3. Konfigurasikan database sumber dan tujuan. Tabel berikut menjelaskan parameter-parameternya.

    Kategori

    Konfigurasi

    Deskripsi

    Tidak ada

    Task Name

    DTS secara otomatis menghasilkan nama tugas. Kami menyarankan agar Anda menentukan nama deskriptif untuk memudahkan identifikasi. Nama tersebut tidak perlu unik.

    Source Database

    Select Existing Connection

    • Jika Anda menggunakan instans database yang terdaftar di DTS, pilih instans tersebut dari daftar drop-down. DTS secara otomatis mengisi parameter database berikut untuk instans tersebut. Untuk informasi selengkapnya, lihat Manage database connections.

      Catatan

      Di konsol DMS, Anda dapat memilih instans database dari daftar drop-down Select a DMS database instance.

    • Jika Anda gagal mendaftarkan instans ke DTS, atau tidak perlu menggunakan instans yang terdaftar di DTS, Anda harus mengonfigurasi informasi database berikut.

    Database Type

    Pilih MySQL.

    Access Method

    Pilih Alibaba Cloud Instance.

    Instance Region

    Pilih wilayah tempat instans sumber RDS MySQL berada.

    Replicate Data Across Alibaba Cloud Accounts

    Contoh ini untuk migrasi dalam satu akun Alibaba Cloud yang sama. Pilih No.

    RDS Instance ID

    Pilih ID instans sumber RDS MySQL.

    Database Account

    Masukkan akun database instans sumber RDS MySQL. Untuk informasi tentang izin yang diperlukan, lihat Permissions required for database accounts.

    Database Password

    Masukkan kata sandi yang sesuai dengan akun database.

    Encryption

    Pilih Non-encrypted Connection atau SSL Secure Connection sesuai kebutuhan. Jika Anda mengatur ini ke SSL Secure Connection, Anda harus mengaktifkan enkripsi SSL untuk instans RDS for MySQL terlebih dahulu. Untuk informasi selengkapnya, lihat Use a cloud certificate to quickly enable SSL link encryption.

    Destination Database

    Select Existing Connection

    • Jika Anda menggunakan instans database yang terdaftar di DTS, pilih instans tersebut dari daftar drop-down. DTS secara otomatis mengisi parameter database berikut untuk instans tersebut. Untuk informasi selengkapnya, lihat Manage database connections.

      Catatan

      Di konsol DMS, Anda dapat memilih instans database dari daftar drop-down Select a DMS database instance.

    • Jika Anda gagal mendaftarkan instans ke DTS, atau tidak perlu menggunakan instans yang terdaftar di DTS, Anda harus mengonfigurasi informasi database berikut.

    Database Type

    Pilih SelectDB.

    Access Method

    Pilih Alibaba Cloud Instance.

    Instance Region

    Pilih wilayah tempat instans SelectDB tujuan berada.

    Replicate Data Across Alibaba Cloud Accounts

    Contoh ini untuk migrasi dalam satu akun Alibaba Cloud yang sama. Pilih No.

    Instance ID

    Pilih ID instans SelectDB tujuan.

    Database Account

    Masukkan akun database instans SelectDB tujuan. Untuk informasi tentang izin yang diperlukan, lihat Permissions required for database accounts.

    Database Password

    Kata sandi yang digunakan untuk mengakses instans database.

  4. Setelah menyelesaikan konfigurasi, klik Test Connectivity and Proceed di bagian bawah halaman.

    Catatan
    • Pastikan blok alamat IP layanan DTS telah ditambahkan ke pengaturan keamanan database sumber dan tujuan, baik secara otomatis maupun manual, untuk mengizinkan akses dari server DTS. Untuk informasi selengkapnya, lihat Add the IP address whitelist of DTS servers.

    • Jika database sumber atau tujuan adalah database yang dikelola sendiri (Access Method bukan Alibaba Cloud Instance), Anda juga harus mengklik Test Connectivity di kotak dialog CIDR Blocks of DTS Servers.

  5. Konfigurasikan objek yang akan dimigrasikan.

    1. Di halaman Configure Objects, konfigurasikan objek yang ingin Anda migrasikan.

      Konfigurasi

      Deskripsi

      Migration Types

      • Jika Anda hanya perlu melakukan migrasi data penuh, pilih Schema Migration dan Full Data Migration.

      • Untuk melakukan migrasi tanpa downtime, pilih Schema Migration, Full Data Migration, dan Incremental Data Migration.

      Penting
      • Saat data dimigrasikan dari MySQL ke SelectDB, tipe data dikonversi. Jika Anda tidak memilih Schema Migration, Anda harus membuat tabel model Unique atau Duplicate dengan struktur yang sesuai di SelectDB tujuan terlebih dahulu. Untuk informasi selengkapnya, lihat Data Type Mapping, Additional Column Information, dan Data Model.

      • Jika Anda tidak memilih Incremental Data Migration, untuk memastikan konsistensi data, jangan menulis data baru ke instans sumber selama migrasi data.

      Processing Mode of Conflicting Tables

      • Precheck and Report Errors: Memeriksa apakah tabel dengan nama yang sama ada di database tujuan. Jika tidak ada tabel dengan nama yang sama, item pemeriksaan ini lolos. Jika ada tabel dengan nama yang sama, kesalahan dilaporkan selama fase pemeriksaan awal dan tugas migrasi data tidak akan dimulai.

        Catatan

        Jika Anda tidak dapat menghapus atau mengganti nama tabel dengan nama yang sama di database tujuan, Anda dapat mengubah nama tabel di database tujuan. Untuk informasi selengkapnya, lihat Map table and column names.

      • Ignore Errors and Proceed: Melewati pemeriksaan apakah tabel dengan nama yang sama ada di database tujuan.

        Peringatan

        Memilih Ignore Errors and Proceed mungkin menyebabkan ketidakkonsistenan data dan menimbulkan risiko bagi bisnis Anda. Misalnya:

        • Jika skema tabel konsisten dan DTS menemukan catatan di database tujuan yang memiliki nilai primary key yang sama dengan catatan di database sumber, DTS tidak menyimpan catatan di kluster tujuan. Catatan dari database sumber akan menimpa catatan di database tujuan.

        • Jika skema tabel tidak konsisten, hanya data dari beberapa kolom yang mungkin dimigrasikan, atau migrasi mungkin gagal. Harap berhati-hati.

      Capitalization of Object Names in Destination Instance

      Huruf kapital untuk nama database, tabel, dan kolom di instans tujuan. Secara default, DTS default policy dipilih. Anda dapat memilih opsi lain untuk memastikan huruf kapital nama objek konsisten dengan database sumber atau tujuan. Untuk informasi selengkapnya, lihat Specify the capitalization of object names in the destination instance.

      Source Objects

      Pilih satu atau beberapa objek dari bagian Source Objects. Klik ikon 向右小箭头 untuk menambahkan objek ke bagian Selected Objects.

      Catatan

      Anda dapat memilih objek untuk dimigrasikan pada level database atau tabel.

      Selected Objects

      • Untuk mengganti nama objek migrasi di instans tujuan, klik kanan objek migrasi di Selected Objects. Untuk informasi selengkapnya, lihat Schema, table, and column name mapping.

      • Jika Migration Types diatur ke Schema Migration, objek dipilih pada granularitas tabel, dan Anda perlu mengatur jumlah bucketing (parameter bucket_count), klik kanan tabel yang akan dimigrasikan di daftar Selected Objects. Di area Parameter Settings, atur Enable Parameter Settings ke Yes, atur Value sesuai kebutuhan Anda, lalu klik OK.

      Catatan
      • Untuk memilih operasi SQL untuk migrasi inkremental pada level database atau tabel, klik kanan objek yang akan dimigrasikan di Selected Objects dan pilih operasi SQL yang diinginkan di kotak dialog yang muncul.

      • Untuk mengatur kondisi WHERE untuk memfilter data, klik kanan tabel yang akan dimigrasikan di bagian Selected Objects dan atur kondisi filter di kotak dialog yang muncul. Untuk informasi selengkapnya, lihat Set filter conditions.

      • Jika Anda menggunakan fitur pemetaan nama objek, migrasi objek lain yang bergantung pada objek yang dipetakan mungkin gagal.

    2. Klik Next: Advanced Settings untuk mengonfigurasi pengaturan lanjutan.

      Konfigurasi

      Deskripsi

      Dedicated Cluster for Task Scheduling

      Secara default, DTS menjadwalkan tugas migrasi data ke kluster bersama jika Anda tidak menentukan kluster khusus. Untuk meningkatkan stabilitas tugas migrasi data, beli kluster khusus. Untuk informasi selengkapnya, lihat What is a DTS dedicated cluster.

      Retry Time for Failed Connections

      Rentang waktu percobaan ulang untuk koneksi yang gagal. Jika database sumber atau tujuan gagal terhubung setelah tugas migrasi data dimulai, DTS segera mencoba menghubungkan kembali dalam rentang waktu percobaan ulang. Nilai valid: 10 hingga 1.440. Satuan: menit. Nilai default: 720. Disarankan mengatur parameter ini ke nilai lebih dari 30. Jika DTS berhasil terhubung kembali ke database sumber dan tujuan dalam rentang waktu percobaan ulang yang ditentukan, tugas migrasi data dilanjutkan. Jika tidak, tugas migrasi data gagal.

      Catatan
      • Jika Anda menentukan rentang waktu percobaan ulang yang berbeda untuk beberapa tugas migrasi data yang berbagi database sumber atau tujuan yang sama, nilai yang ditentukan terakhir akan diutamakan.

      • Saat DTS mencoba menghubungkan kembali, Anda dikenai biaya untuk instans DTS. Disarankan menentukan rentang waktu percobaan ulang sesuai kebutuhan bisnis Anda. Anda juga dapat melepaskan instans DTS sesegera mungkin setelah database sumber dan instans tujuan dilepas.

      Retry Time for Other Issues

      Rentang waktu percobaan ulang untuk masalah lainnya. Misalnya, jika operasi DDL atau DML gagal dilakukan setelah tugas migrasi data dimulai, DTS segera mencoba mengulang operasi tersebut dalam rentang waktu percobaan ulang. Nilai valid: 1 hingga 1.440. Satuan: menit. Nilai default: 10. Disarankan mengatur parameter ini ke nilai lebih dari 10. Jika operasi yang gagal berhasil dilakukan dalam rentang waktu percobaan ulang yang ditentukan, DTS melanjutkan tugas migrasi data. Jika tidak, tugas migrasi data gagal.

      Penting

      Nilai parameter Retry Time for Other Issues harus lebih kecil daripada nilai parameter Retry Time for Failed Connections.

      Enable Throttling for Full Data Migration

      Menentukan apakah akan mengaktifkan pembatasan kecepatan untuk migrasi data penuh. Selama migrasi data penuh, DTS menggunakan sumber daya baca dan tulis database sumber dan tujuan, yang dapat meningkatkan beban server database. Anda dapat mengaktifkan pembatasan kecepatan berdasarkan kebutuhan bisnis Anda. Untuk mengonfigurasi pembatasan kecepatan, Anda harus mengatur parameter Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s). Hal ini mengurangi beban server database tujuan.

      Catatan

      Anda dapat mengonfigurasi parameter ini hanya jika memilih Full Data Migration untuk parameter Migration Types.

      Enable Throttling for Incremental Data Migration

      Menentukan apakah akan mengaktifkan pembatasan kecepatan untuk migrasi data inkremental. Untuk mengonfigurasi pembatasan kecepatan, Anda harus mengatur parameter RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s). Hal ini mengurangi beban server database tujuan.

      Catatan

      Anda dapat mengonfigurasi parameter ini hanya jika memilih Incremental Data Migration untuk parameter Migration Types.

      Environment Tag

      Anda dapat memilih tag lingkungan untuk mengidentifikasi instans sesuai kebutuhan. Dalam contoh ini, pemilihan tidak diperlukan.

      Whether to delete SQL operations on heartbeat tables of forward and reverse tasks

      Berdasarkan kebutuhan bisnis Anda, pilih apakah akan menulis informasi SQL heartbeat ke database sumber saat instans DTS berjalan.

      • Yes: Informasi SQL heartbeat tidak ditulis ke database sumber. Hal ini mungkin menyebabkan instans DTS melaporkan delay.

      • No: Menulis informasi SQL heartbeat ke database sumber, yang mungkin mengganggu fitur seperti backup fisik dan cloning database sumber.

      Configure ETL

      Menentukan apakah akan mengaktifkan fitur ekstrak, transformasi, muat (ETL). Untuk informasi selengkapnya, lihat What is ETL? Nilai valid:

      Monitoring and Alerting

      Menentukan apakah akan mengonfigurasi peringatan untuk tugas migrasi data. Jika tugas gagal atau latensi migrasi melebihi ambang batas yang ditentukan, kontak peringatan akan menerima notifikasi. Nilai valid:

      • No: tidak mengonfigurasi peringatan.

      • Yes: mengonfigurasi peringatan. Dalam hal ini, Anda juga harus mengonfigurasi ambang batas peringatan dan alert notification settings. Untuk informasi selengkapnya, lihat bagian Configure monitoring and alerting when you create a DTS task dalam topik Configure monitoring and alerting.

    3. Opsional: Setelah menyelesaikan konfigurasi di atas, klik Next: Configure Database and Table Fields untuk mengatur Primary Key Column, Distribution Key, dan Engine untuk tabel tujuan.

      Catatan
      • Langkah ini tersedia hanya jika Anda memilih Schema Migration untuk Migration Types selama konfigurasi objek tugas. Anda kemudian dapat memilih All untuk Definition Status untuk melakukan modifikasi.

      • Primary Key Column dapat berupa primary key komposit yang terdiri dari beberapa kolom. Anda harus memilih satu atau beberapa kolom dari Primary Key Column sebagai Distribution Key.

      • Jika suatu tabel tidak memiliki primary key maupun kendala UNIQUE, Anda harus mengatur Engine ke duplicate. Jika tidak, hal ini dapat menyebabkan kegagalan instans atau kehilangan data.

  6. Simpan pengaturan tugas dan jalankan pemeriksaan awal.

    • Untuk melihat parameter yang perlu ditentukan saat Anda memanggil operasi API terkait untuk mengonfigurasi tugas DTS, arahkan kursor ke Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters.

    • Jika Anda tidak perlu melihat atau telah melihat parameter tersebut, klik Next: Save Task Settings and Precheck di bagian bawah halaman.

    Catatan
    • Sebelum tugas migrasi data dapat dimulai, DTS melakukan pemeriksaan awal. Anda hanya dapat memulai tugas migrasi data setelah tugas tersebut lolos pemeriksaan awal.

    • Jika tugas gagal lolos pemeriksaan awal, klik View Details di sebelah setiap item yang gagal. Setelah menganalisis penyebab berdasarkan hasil pemeriksaan, perbaiki masalah tersebut, lalu jalankan pemeriksaan awal lagi.

    • Jika peringatan dipicu untuk suatu item selama pemeriksaan awal:

      • Jika item peringatan tidak dapat diabaikan, klik View Details di sebelah item yang gagal dan perbaiki masalah tersebut. Kemudian, jalankan pemeriksaan awal lagi.

      • Jika item peringatan dapat diabaikan, klik Confirm Alert Details. Di kotak dialog View Details, klik Ignore. Di pesan yang muncul, klik OK. Kemudian, klik Precheck Again untuk menjalankan pemeriksaan awal lagi. Jika Anda mengabaikan item peringatan, ketidakkonsistenan data mungkin terjadi, dan bisnis Anda mungkin terpapar risiko potensial.

  7. Beli instance.

    1. Tunggu hingga Success Rate menjadi 100%. Lalu, klik Next: Purchase Instance.

    2. Di halaman Purchase Instance, konfigurasikan parameter Instance Class untuk instans migrasi data. Tabel berikut menjelaskan parameter-parameternya.

      Bagian

      Parameter

      Deskripsi

      New Instance Class

      Resource Group

      Kelompok resource tempat instans migrasi data berada. Nilai default: default resource group. Untuk informasi selengkapnya, lihat Apa itu Resource Management?

      Instance Class

      DTS menyediakan berbagai kelas instans dengan kecepatan migrasi yang berbeda. Anda dapat memilih kelas instans sesuai skenario bisnis Anda. Untuk informasi selengkapnya, lihat Kelas instans untuk instans migrasi data.

    3. Baca dan setujui Data Transmission Service (Pay-as-you-go) Service Terms dengan memilih kotak centang.

    4. Klik Buy and Start. Di pesan yang muncul, klik OK.

      Anda dapat melihat progres tugas di halaman Data Migration.

      Catatan
      • Jika tugas migrasi data tidak dapat digunakan untuk memigrasikan data inkremental, tugas tersebut akan berhenti secara otomatis. Completed ditampilkan di bagian Status .

      • Jika tugas migrasi data dapat digunakan untuk memigrasikan data inkremental, tugas tersebut tidak berhenti secara otomatis. Tugas migrasi data inkremental tidak pernah berhenti atau selesai. Running ditampilkan di bagian Status.

Pemetaan tipe data

Kategori

Tipe data MySQL

Tipe data SelectDB

Numerik

TINYINT

TINYINT

TINYINT UNSIGNED

SMALLINT

SMALLINT

SMALLINT

SMALLINT UNSIGNED

INT

MEDIUMINT

INT

MEDIUMINT UNSIGNED

BIGINT

INT

INT

INT UNSIGNED

BIGINT

BIGINT

BIGINT

BIGINT UNSIGNED

LARGEINT

BIT(M)

INT

Decimal

Decimal

Catatan

Atribut zerofill tidak didukung.

Numeric

Decimal

Float

Float

Double

DOUBLE

  • BOOL

  • BOOLEAN

BOOLEAN

TANGGAL DAN WAKTU

DATE

DATEV2

DATETIME[(fsp)]

DATETIMEV2

Timestamp[(fsp)]

DATETIMEV2

Time[(fsp)]

VARCHAR

YEAR[(4)]

INT

STRING

  • CHAR

  • VARCHAR

VARCHAR

Penting

Untuk mencegah kehilangan data, data tipe CHAR dan VARCHAR(n) dikonversi ke VARCHAR(4*n) setelah dimigrasikan ke SelectDB.

  • Jika panjang data tidak ditentukan, nilai default SelectDB, VARCHAR(65533), digunakan.

  • Jika panjang data melebihi 65533, data dikonversi ke STRING setelah dimigrasikan ke SelectDB.

  • BINARY

  • VARBINARY

STRING

  • TINYTEXT

  • TEXT

  • MEDIUMTEXT

  • LONGTEXT

STRING

  • TINYBLOB

  • BLOB

  • MEDIUMBOLB

  • LONGBLOB

STRING

ENUM

STRING

SET

STRING

JSON

STRING

Kolom tambahan

Catatan

Tabel berikut menjelaskan kolom tambahan yang secara otomatis ditambahkan oleh DTS atau yang harus Anda tambahkan secara manual ke tabel tujuan yang menggunakan model Duplicate.

Nama

Tipe data

Nilai default

Deskripsi

_is_deleted

Int

0

Menunjukkan apakah data dihapus.

  • Insert: Nilainya 0.

  • Update: Nilainya 0.

  • Delete: Nilainya 1.

_version

Bigint

0

  • Untuk migrasi data penuh: Nilainya 0.

  • Untuk migrasi data inkremental: Nilainya adalah timestamp yang sesuai (dalam detik) di log biner database sumber.

_record_id

Bigint

0

  • Untuk migrasi data penuh: Nilainya 0.

  • Untuk migrasi data inkremental: Nilainya adalah ID catatan di log inkremental. ID ini secara unik mengidentifikasi log tersebut.

    Catatan

    Nilai ID bersifat unik dan bertambah.