Gunakan Data Transmission Service (DTS) untuk memigrasikan data dari kluster PolarDB for MySQL ke instans PolarDB-X 1.0. Lakukan migrasi penuh untuk pergantian satu kali, atau gabungkan migrasi penuh dan inkremental agar data tetap sinkron hingga Anda siap beralih.
Prasyarat
Sebelum memulai, pastikan Anda telah:
Memiliki instans PolarDB-X 1.0 dengan kapasitas penyimpanan yang lebih besar daripada ukuran total data kluster sumber PolarDB for MySQL. Pilih ApsaraDB RDS for MySQL sebagai tipe penyimpanan saat membuat instans. Lihat Buat instans PolarDB-X 1.0.
Database dan tabel telah dibuat sebelumnya di instans tujuan PolarDB-X 1.0. Migrasi skema tidak didukung—buat skema target sebelum memulai tugas migrasi. Lihat Buat database dan Operasi SQL dasar.
(Untuk migrasi inkremental) Binary logging diaktifkan pada kluster sumber dan parameter
loose_polar_log_bindiatur keon. Lihat Aktifkan binary logging dan Modifikasi parameter.
Penagihan
| Tipe migrasi | Biaya konfigurasi tugas | Biaya transfer data |
|---|---|---|
| Migrasi data penuh | Gratis | Gratis |
| Migrasi data inkremental | Dikenai biaya. Lihat Ikhtisar penagihan. |
Izin yang diperlukan
| Database | Migrasi data penuh | Migrasi data inkremental |
|---|---|---|
| Kluster sumber PolarDB for MySQL | SELECT | Baca dan tulis |
| Instans tujuan PolarDB-X 1.0 | Baca dan tulis | Baca dan tulis |
Untuk cara membuat dan memberi otorisasi akun database:
Kluster PolarDB for MySQL: Buat dan kelola akun database dan Kelola password akun database.
Instans PolarDB-X 1.0: Kelola akun database.
Operasi SQL yang didukung untuk migrasi inkremental
Operasi DML yang didukung: INSERT, UPDATE, dan DELETE.
Batasan
Batasan database sumber
| Batas | Detail |
|---|---|
| Bandwidth outbound | Server sumber harus memiliki bandwidth outbound yang mencukupi. Bandwidth yang tidak mencukupi mengurangi kecepatan migrasi. |
| Primary key atau kendala UNIK | Tabel yang akan dimigrasikan harus memiliki PRIMARY KEY atau kendala UNIQUE, dengan semua field bersifat unik. Jika tidak, tujuan mungkin berisi catatan duplikat. |
| Batasan migrasi tingkat tabel | Jika Anda memilih objek tingkat tabel dan perlu mengganti nama tabel atau kolom di tujuan, satu tugas migrasi mendukung hingga 1.000 tabel. Untuk lebih dari 1.000 tabel, bagi menjadi beberapa tugas atau lakukan migrasi tingkat database. |
| Retensi log biner (migrasi inkremental) | Log biner pada sumber harus dipertahankan selama: hanya migrasi inkremental — lebih dari 24 jam; migrasi penuh + inkremental — minimal 7 hari. Setelah migrasi penuh selesai, kurangi retensi menjadi lebih dari 24 jam. Jika DTS tidak dapat memperoleh log biner, tugas gagal dan ketidakkonsistenan atau kehilangan data mungkin terjadi. Periode retensi yang lebih pendek dari minimum di atas berada di luar Service Level Agreement (SLA) DTS. Mengaktifkan binary logging pada kluster PolarDB for MySQL menimbulkan biaya penyimpanan untuk file log biner. |
| Operasi DDL selama migrasi | Jangan menjalankan operasi DDL pada sumber selama migrasi skema atau migrasi data penuh. Tugas gagal jika skema berubah di tengah migrasi. |
| Penulisan selama migrasi penuh saja | Untuk migrasi penuh saja (tanpa inkremental), jangan menulis ke sumber selama migrasi. Untuk mendukung penulisan berkelanjutan, gunakan migrasi penuh + inkremental. |
Batasan lainnya
| Limit | Detail |
|---|---|
| Tipe data yang tidak didukung | DTS tidak dapat memigrasikan tipe data berikut: BIT, VARBIT, GEOMETRY, ARRAY, UUID, TSQUERY, TSVECTOR, dan TXID_SNAPSHOT. |
| Indeks awalan | Indeks awalan tidak dapat dimigrasikan. Jika sumber berisi indeks awalan, tugas mungkin gagal. |
| Node read-only | Node read-only dari kluster sumber PolarDB for MySQL tidak dapat dimigrasikan. |
| Alat DDL Online | Jangan gunakan alat DDL online seperti pt-online-schema-change pada objek yang dimigrasikan selama migrasi. Tugas gagal jika operasi DDL Online dilakukan. |
| Penulisan konkuren ke tujuan | Jangan menulis data dari sumber lain ke tujuan selama migrasi. Penulisan konkuren menyebabkan ketidakkonsistenan data. |
| Beban server | Migrasi data penuh menggunakan resource baca dan tulis pada sumber dan tujuan, yang meningkatkan beban server. Jadwalkan migrasi selama jam sepi. |
| Ruang tabel tujuan | Migrasi penuh menyebabkan fragmentasi pada tabel tujuan akibat operasi INSERT konkuren. Setelah migrasi, ruang tabel tujuan lebih besar daripada sumber. |
| Perilaku tabel heartbeat | DTS secara berkala menjalankan CREATE DATABASE IF NOT EXISTS `test` pada sumber untuk memajukan posisi file log biner. Ini adalah perilaku yang diharapkan. |
Migrasi data
Proses migrasi terdiri dari delapan langkah: navigasi ke halaman tugas, buat tugas, konfigurasi database sumber dan tujuan, uji konektivitas, pilih objek dan konfigurasi pengaturan migrasi, konfigurasi pengaturan lanjutan, jalankan pemeriksaan awal, serta beli instans untuk memulai migrasi.
Langkah 1: Buka halaman Tugas Migrasi Data
Navigasi ke konsol DTS tempat Anda akan membuat dan mengelola tugas migrasi.
Login ke Konsol Data Management (DMS).
Pada bilah navigasi atas, klik DTS.
Pada panel navigasi kiri, pilih DTS (DTS) > Data Migration.
Untuk langsung membuka halaman tugas, gunakan Halaman Tugas Migrasi Data konsol DTS baru dan pilih wilayah target di pojok kiri atas. Navigasi konsol dapat berbeda tergantung mode dan tata letak—lihat Mode simple dan Sesuaikan tata letak dan gaya konsol DMS.
Langkah 2: Buat tugas migrasi
Mulai mengonfigurasi tugas migrasi baru.
Dari daftar drop-down di samping Tugas Migrasi Data, pilih wilayah tempat instans migrasi berada.
Klik Create Task.
(Opsional) Klik New Configuration Page di pojok kanan atas untuk beralih ke UI konfigurasi baru.
Lewati langkah ini jika Back to Previous Version sudah ditampilkan—Anda sudah berada di halaman konfigurasi baru. Halaman konfigurasi baru direkomendasikan.
Langkah 3: Konfigurasi database sumber dan tujuan
Masukkan detail koneksi untuk kluster sumber PolarDB for MySQL dan instans tujuan PolarDB-X 1.0.
| Bagian | Parameter | Deskripsi |
|---|---|---|
| N/A | Task Name | Nama deskriptif untuk tugas. DTS memberikan nama default — pertahankan atau ganti dengan nama yang bermakna. Nama tugas tidak perlu unik. |
| Source Database | Select a DMS database instance. | Pilih instans yang sudah ada untuk mengisi parameter secara otomatis, atau biarkan kosong untuk mengonfigurasi secara manual. Untuk mendaftarkan database baru: di konsol DMS, klik Create Template; di konsol DTS, gunakan halaman Database Connections. Lihat Daftarkan instans database Alibaba Cloud dan Kelola koneksi database. |
| Database Type | Pilih PolarDB for MySQL. | |
| Access Method | Pilih Alibaba Cloud Instance. | |
| Instance Region | Wilayah kluster sumber PolarDB for MySQL. | |
| Replicate Data Across Alibaba Cloud Accounts | Pilih No jika sumber dan tujuan berada dalam akun Alibaba Cloud yang sama. | |
| PolarDB Cluster ID | ID kluster sumber PolarDB for MySQL. | |
| Database Account | Akun database untuk kluster sumber. Lihat Izin yang diperlukan. | |
| Database Password | Password untuk akun database. | |
| Encryption | Apakah koneksi dienkripsi. Lihat Konfigurasi enkripsi SSL. | |
| Destination Database | Select a DMS database instance. | Sama seperti sumber — pilih instans yang sudah ada atau konfigurasi secara manual. |
| Database Type | Pilih PolarDB-X 1.0. | |
| Access Method | Pilih Alibaba Cloud Instance. | |
| Instance Region | Wilayah instans tujuan PolarDB-X 1.0. | |
| Instance ID | ID instans tujuan PolarDB-X 1.0. | |
| Database Account | Akun database untuk instans tujuan. Lihat Izin yang diperlukan. | |
| Database Password | Password untuk akun database. |
Langkah 4: Uji konektivitas dan otorisasi akses DTS
Klik Test Connectivity and Proceed di bagian bawah halaman.
DTS secara otomatis menambahkan blok CIDR-nya ke daftar putih IP instans database Alibaba Cloud atau ke aturan grup keamanan instans Elastic Compute Service (ECS) yang menghosting database yang dikelola sendiri. Untuk database yang dikelola sendiri pada beberapa instans ECS, tambahkan blok CIDR tersebut ke setiap instans secara manual. Untuk database on-premises atau cloud pihak ketiga, tambahkan blok CIDR tersebut secara manual ke daftar putih IP database. Lihat Blok CIDR server DTS.
Menambahkan blok CIDR DTS ke daftar putih atau aturan grup keamanan menimbulkan risiko keamanan. Sebelum melanjutkan, ambil langkah pencegahan: gunakan kredensial kuat, batasi port yang terbuka, autentikasi panggilan API, dan audit aturan daftar putih secara berkala. Sebagai alternatif, hubungkan database ke DTS melalui Express Connect, VPN Gateway, atau Smart Access Gateway.
Langkah 5: Pilih objek dan konfigurasi pengaturan migrasi
Pilih database atau tabel yang akan dimigrasikan dan tentukan tipe migrasi.
Pada halaman Select Objects, konfigurasikan parameter berikut.
| Parameter | Deskripsi |
|---|---|
| Migration Types | Pilih Full Data Migration untuk migrasi satu kali. Pilih kedua opsi Full Data Migration dan Incremental Data Migration agar tujuan tetap sinkron dan meminimalkan downtime selama jendela migrasi. Jika hanya memilih migrasi penuh, hindari menulis ke sumber selama proses migrasi. |
| Processing Mode of Conflicting Tables | Precheck and Report Errors: pemeriksaan awal gagal jika nama tabel sumber sesuai dengan nama tabel tujuan. Gunakan fitur pemetaan nama objek untuk mengganti nama tabel yang bentrok. Ignore Errors and Proceed: melewati pemeriksaan awal untuk konflik nama. Baris dengan primary key yang sesuai dilewati; ketidaksesuaian skema dapat menyebabkan migrasi parsial atau kegagalan tugas. Gunakan dengan hati-hati. |
| Capitalization of Object Names in Destination Instance | Mengontrol kapitalisasi nama database, tabel, dan kolom di tujuan. Default adalah DTS default policy. Lihat Tentukan kapitalisasi nama objek di instans tujuan. |
| Source Objects | Pilih objek yang akan dimigrasikan, lalu klik ikon panah untuk menambahkannya ke Selected Objects. Hanya tabel yang dapat dipilih sebagai objek migrasi. |
| Selected Objects | Untuk mengganti nama satu objek, klik kanan objek tersebut. Untuk mengganti nama beberapa objek, klik Batch Edit. Untuk memfilter baris, klik kanan tabel dan atur kondisi filter. Lihat Pemetaan nama objek dan Atur kondisi filter. Mengganti nama objek dapat menyebabkan objek dependen gagal dimigrasikan. |
Langkah 6: Konfigurasi pengaturan lanjutan
Klik Next: Advanced Settings dan konfigurasikan parameter berikut untuk mengontrol perilaku tugas, pembatasan kecepatan, dan peringatan.
| Parameter | Deskripsi |
|---|---|
| Dedicated Cluster for Task Scheduling | DTS menjadwalkan tugas ke klaster bersama secara default. Untuk meningkatkan stabilitas, beli klaster khusus. Lihat Apa itu klaster khusus DTS. |
| Retry Time for Failed Connections | Durasi DTS mencoba ulang saat sumber atau tujuan tidak dapat dijangkau setelah tugas dimulai. Nilai valid: 10–1.440 menit. Default: 720 menit. Atur minimal 30 menit. Jika beberapa tugas menggunakan database yang sama, nilai yang paling baru diatur akan digunakan. DTS menagih selama upaya percobaan ulang. |
| Retry Time for Other Issues | Durasi DTS mencoba ulang operasi DDL atau DML yang gagal. Nilai valid: 1–1.440 menit. Default: 10 menit. Atur minimal 10 menit. Harus lebih kecil dari Retry Time for Failed Connections. |
| Enable Throttling for Full Data Migration | Batasi beban baca/tulis pada sumber dan tujuan selama migrasi penuh dengan mengatur Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s). Tersedia hanya jika Full Data Migration dipilih. |
| Enable Throttling for Incremental Data Migration | Batasi beban selama migrasi inkremental dengan mengatur RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s). Tersedia hanya jika Incremental Data Migration dipilih. |
| Environment Tag | Tag untuk mengidentifikasi instans DTS. Opsional. |
| Whether to delete SQL operations on heartbeat tables of forward and reverse tasks | Mengontrol apakah DTS menulis SQL heartbeat ke database sumber. Yes: tidak menulis operasi SQL pada tabel heartbeat. Dalam kasus ini, latensi instans DTS mungkin ditampilkan. No: DTS menulis SQL heartbeat, yang dapat memengaruhi backup fisik dan kloning database sumber. |
| Configure ETL | Apakah akan mengonfigurasi pemrosesan ekstrak, transformasi, dan muat (ETL). Yes: membuka editor kode untuk pernyataan transformasi data. Lihat Konfigurasi ETL dalam tugas migrasi data atau sinkronisasi data. No: tanpa pemrosesan ETL. |
| Monitoring and Alerting | Apakah akan menerima notifikasi saat tugas gagal atau latensi melebihi ambang batas. Yes: konfigurasikan ambang batas peringatan dan pengaturan notifikasi. Lihat Konfigurasi pemantauan dan peringatan saat membuat tugas DTS. No: tanpa peringatan. |
Langkah 7: Simpan pengaturan dan jalankan pemeriksaan awal
DTS memvalidasi konfigurasi sebelum memulai migrasi. Tugas tidak dapat dimulai hingga pemeriksaan awal berhasil.
Klik Next: Save Task Settings and Precheck.
Untuk melihat pratinjau parameter OpenAPI untuk konfigurasi ini sebelum menyimpan, arahkan kursor ke Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters.
Jika item pemeriksaan gagal, klik View Details di samping item yang gagal. Perbaiki masalah, lalu klik Precheck Again.
Jika item pemeriksaan menghasilkan peringatan yang dapat Anda abaikan dengan aman, klik Confirm Alert Details, lalu klik Ignore > OK > Precheck Again. Peringatan yang diabaikan dapat menyebabkan ketidakkonsistenan data.
Tunggu hingga tingkat keberhasilan mencapai 100%, lalu klik Next: Purchase Instance.
Langkah 8: Beli instans dan mulai migrasi
Pilih kelas instans untuk menentukan kecepatan migrasi, lalu mulai tugas.
Pada halaman Purchase Instance, konfigurasikan parameter berikut.
Bagian Parameter Deskripsi New Instance Class Resource Group Settings Kelompok sumber daya untuk instans migrasi. Default: default resource group. Lihat Apa itu Resource Management?. Instance Class Kelas instans migrasi, yang menentukan kecepatan migrasi. Lihat Kelas instans migrasi data. Pilih kotak centang untuk menyetujui Data Transmission Service (Pay-as-you-go) Service Terms.
Klik Buy and Start untuk memulai tugas migrasi. Lacak progres di daftar tugas.