Fitur klon satu klik membuat kluster PolarDB for MySQL dari instans ApsaraDB RDS for MySQL yang sudah ada, menyalin akun, database, daftar putih IP, dan parameter utama. Data inkremental yang ditulis ke instans sumber setelah proses klon dimulai tidak disinkronkan ke kluster baru.
Untuk menyinkronkan data inkremental selama migrasi, lihat Buat kluster PolarDB for MySQL dengan meningkatkan instans ApsaraDB RDS for MySQL.
Fitur klon tidak dikenai biaya, dan tidak terjadi kehilangan data selama proses klon.
Pilih metode migrasi
Klon satu klik mendukung dua metode: migrasi fisik dan migrasi logis (melalui Data Transmission Service (DTS)). Metode yang digunakan bergantung pada versi MySQL, edisi, dan jenis penyimpanan instans sumber Anda.
| Jika instans sumber Anda adalah... | Metode migrasi |
|---|---|
| RDS MySQL 5.6 atau 5.7, Edisi Ketersediaan Tinggi, SSD lokal, diklon ke versi MySQL yang sama | Migrasi fisik |
| Kombinasi lainnya (MySQL 8.0, disk cloud, versi target berbeda, dll.) | Migrasi logis |
Migrasi fisik menyalin data penuh langsung dari instans sumber tanpa melibatkan DTS. Proses ini lebih cepat dan tidak memengaruhi operasi instans sumber.
Migrasi logis membuat tugas sinkronisasi data DTS untuk memigrasikan skema dan data penuh. Metode ini mendukung konfigurasi sumber yang lebih luas dan memungkinkan klon lintas versi, tetapi tunduk pada batasan spesifik DTS.
Kedua metode tidak mendukung sinkronisasi data inkremental atau migrasi cross-region.
Versi dan jenis penyimpanan yang didukung
Tabel berikut menunjukkan jenis penyimpanan yang tersedia untuk setiap edisi RDS dan versi MySQL. Migrasi fisik hanya berlaku untuk RDS MySQL 5.6 atau 5.7, Edisi Ketersediaan Tinggi, SSD lokal, diklon ke versi MySQL yang sama. Semua kombinasi lainnya menggunakan migrasi logis.
| Edisi RDS | MySQL 5.6 | MySQL 5.7 | MySQL 8.0 |
|---|---|---|---|
| Edisi Dasar | N/A | Disk cloud | Disk cloud |
| Edisi Ketersediaan Tinggi | SSD lokal | SSD lokal dan disk cloud | SSD lokal dan disk cloud |
| Edisi Kluster | N/A | Disk cloud | Disk cloud |
| Edisi Perusahaan | SSD lokal | SSD lokal | SSD lokal |
Penagihan
Migrasi fisik: Tidak dikenai biaya untuk migrasi data. Anda hanya membayar kluster PolarDB. Lihat Ikhtisar item yang dapat ditagih.
Migrasi logis: Tidak dikenai biaya untuk tugas sinkronisasi DTS dalam 30 hari pertama setelah dibuat. Setelah 30 hari, tugas tersebut dibatalkan secara otomatis. Uji coba gratis ini tidak berlaku untuk akun operator jaringan virtual (VNO) atau pengguna Resource Access Management (RAM).
Prasyarat
Sebelum memulai, pastikan bahwa:
Kluster PolarDB target menjalankan versi MySQL yang sama atau lebih baru daripada instans sumber. Penurunan versi tidak didukung (misalnya, Anda tidak dapat mengklon instans RDS MySQL 5.7 ke kluster PolarDB for MySQL 5.6).
Hanya untuk migrasi fisik:
Instans sumber memenuhi versi minor minimum: Untuk memeriksa versi minor, jalankan pernyataan berikut pada instans sumber:
RDS MySQL 5.6: versi minor 20190815 atau lebih baru
RDS MySQL 5.7: versi minor 20200331 atau lebih baru
SHOW VARIABLES LIKE '%rds_release_date%';Jika versi minor lebih lama dari yang dipersyaratkan, tingkatkan versinya sebelum melanjutkan. Lihat Perbarui versi mesin minor.
Mesin penyimpanan tabel adalah InnoDB atau X-Engine. Untuk mengidentifikasi tabel yang menggunakan mesin lain, jalankan:
SELECT TABLE_SCHEMA, TABLE_NAME, ENGINE FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA NOT IN ('information_schema', 'mysql', 'performance_schema', 'sys') AND ENGINE NOT IN ('InnoDB', 'X-Engine');Konversi semua tabel yang dikembalikan sebelum mengklon.
Transparent Data Encryption (TDE) dan SSL dinonaktifkan pada instans sumber. Lihat TDE dan SSL. Jika TDE atau SSL diaktifkan dan Anda tidak dapat menonaktifkannya, gunakan DTS untuk memigrasikan data secara manual. Lihat Migrasikan data dari instans ApsaraDB RDS for MySQL ke kluster PolarDB for MySQL.
Jika Database Proxy (Safe Mode) diaktifkan, buat akun istimewa atau ubah mode koneksi jaringan ke mode berkinerja tinggi. Lihat Buat akun dan Tingkatkan mode koneksi jaringan instans ApsaraDB RDS.

Hanya untuk migrasi logis:
Lengkapi kedua pemeriksaan awal di bawah ini sebelum memulai migrasi.
Pemeriksaan Awal 1: Verifikasi peran terkait layanan
Metode migrasi logis memerlukan keberadaan peran terkait layanan AliyunServiceRoleForPolarDB di akun Anda. Jika belum ada, buat peran tersebut sebelum melanjutkan.
Masuk ke Konsol Resource Access Management (RAM) dan buka halaman Roles.
Periksa apakah AliyunServiceRoleForPolarDB muncul dalam daftar.
Jika peran tersebut ada, lanjutkan ke Pemeriksaan Awal 2.Klik Create Role. Pada langkah Select Role Type, pilih Alibaba Cloud Service dan klik Next.

Pada langkah Configure Role, atur Role Type menjadi Service Linked Role dan pilih ApsaraDB for PolarDB dari daftar Select Service.

Klik OK dan pastikan peran tersebut kini muncul dalam daftar.
Pemeriksaan Awal 2: Hapus akun sistem berlebih dari instans sumber
Setiap versi RDS MySQL memiliki akun sistem yang ditentukan. Jika root dan aliyun_root ada secara bersamaan, akun sistem kluster PolarDB tujuan mungkin ditimpa selama proses klon. Hapus akun sistem tambahan sebelum memulai.
| Versi RDS MySQL | Akun sistem yang benar |
|---|---|
| RDS MySQL 5.6 | root |
| RDS MySQL 5.7 | aliyun_root |
| RDS MySQL 8.0 | aliyun_root |
Akun sistem tambahan mungkin dibuat secara manual atau diwariskan dari peningkatan versi sebelumnya. Beberapa akun mungkin tidak terlihat di konsol.
Contoh: menghapus akun berlebih dari RDS MySQL 5.6
Akun yang benar untuk MySQL 5.6 adalah root. Jika aliyun_root juga ada, hapus akun tersebut.
Hubungkan ke database dengan akun istimewa.
Periksa akun sistem yang ada:
SELECT * FROM mysql.user WHERE `user` IN ('root', 'aliyun_root');Hapus akun berlebih. Pastikan akun tersebut tidak digunakan dalam workload Anda sebelum melanjutkan.
DELETE FROM mysql.user WHERE `user` = 'aliyun_root' LIMIT n;
Batasan instans sumber migrasi logis:
Tabel harus memiliki PRIMARY KEY atau kendala UNIK, dengan semua bidang unik. Tabel tanpa kendala ini dapat menghasilkan data duplikat di kluster tujuan.
Jika Anda memilih tabel individual (bukan seluruh database) sebagai objek sinkronisasi dan perlu mengganti nama tabel atau kolom, satu tugas mendukung hingga 1.000 tabel. Untuk lebih dari 1.000 tabel, gunakan beberapa tugas atau sinkronkan seluruh database.
Binary logging harus diaktifkan, dan
binlog_row_imageharus diatur kefull. Lihat Ubah parameter instans.Jadwalkan migrasi selama jam sepi. Sinkronisasi data penuh awal menggunakan sumber daya baca dan tulis di sumber dan tujuan, yang dapat meningkatkan beban database.
Setelah sinkronisasi data penuh selesai, ruang tabel tujuan mungkin lebih besar daripada sumber karena fragmentasi dari operasi INSERT bersamaan.
Jangan gunakan
gh-ostataupt-online-schema-changeuntuk operasi DDL pada tabel yang disinkronkan selama sinkronisasi. Gunakan Data Management (DMS) untuk DDL online jika diperlukan.DTS menonaktifkan kendala FOREIGN KEY di tujuan secara default. Operasi cascade dan delete dari sumber tidak direplikasi.
Tulis data ke tujuan hanya melalui DTS selama sinkronisasi. Menulis dari sumber lain dapat menyebabkan inkonsistensi atau kehilangan data.
Langkah 1: Buat kluster dengan mengklon
Masuk ke Konsol PolarDB.
Di pojok kiri atas, pilih wilayah tempat instans RDS sumber ditempatkan.
Klik Create Cluster.
Atur Billing Method menjadi Subscription, Pay-as-you-go, atau Serverless.
Metode penagihan Cara kerjanya Subscription Bayar di muka untuk node komputasi. Penyimpanan ditagih per jam berdasarkan penggunaan aktual. Pay-as-you-go Tidak ada pembayaran di muka. Node komputasi dan penyimpanan ditagih per jam berdasarkan penggunaan aktual. Serverless Tidak ada pembayaran di muka. Node komputasi, penyimpanan, dan PolarProxy diskalakan secara otomatis. Ditagih berdasarkan penggunaan sumber daya aktual. Konfigurasikan parameter berikut. Untuk parameter yang tidak tercantum di sini, lihat Beli kluster.
Parameter Deskripsi Creation Method Pilih Clone from RDS. Region Wilayah tempat instans RDS sumber ditempatkan. Kluster PolarDB tujuan harus berada di wilayah yang sama. Source RDS Version Versi MySQL instans RDS sumber: 5.6, 5.7, atau 8.0. Source RDS Instance Instans RDS sumber. Instans read-only tidak ditampilkan. Database Engine Versi MySQL untuk kluster PolarDB tujuan. Bisa sama atau berbeda dari sumber. Node Specification Spesifikasi node komputasi. Pilih spesifikasi yang sama atau lebih tinggi daripada instans sumber. Lihat Spesifikasi node komputasi PolarDB untuk MySQL Edisi Perusahaan. Tinjau konfigurasi kluster di pojok kanan atas. Untuk kluster Subscription, atur Duration, Quantity, dan Auto-renewal.
Baca dan terima syarat layanan, lalu klik Confirm Order.
Di halaman Purchase, konfirmasi pesanan dan metode pembayaran, lalu klik Purchase.
Tunggu 10 hingga 15 menit, lalu periksa halaman Clusters untuk kluster baru. Kluster siap digunakan saat statusnya berubah dari Creating menjadi Running. Pastikan Anda telah memilih wilayah yang benar.
Langkah 2: Verifikasi status migrasi
Setelah kluster dibuat, verifikasi bahwa migrasi berhasil diselesaikan.
Masuk ke Konsol PolarDB dan buka halaman Clusters.
Klik ID kluster baru untuk membuka halaman Basic Information-nya.
Periksa bagian RDS Migration: Contoh: Jika instans sumber memiliki pemicu, pemeriksaan awal gagal dengan pesan "The RDS instance has a trigger." Hapus pemicu tersebut dan klik Continue Migration, atau lihat Konfigurasikan tugas sinkronisasi data untuk database sumber yang berisi pemicu.
Jika statusnya Running, migrasi berjalan normal.
Jika statusnya Precheck Failed, ikuti pesan error untuk memperbaiki masalah, lalu klik Continue Migration. Atau, klik Cancel Migration dan buat tugas sinkronisasi DTS secara manual.

Langkah 3: Lihat detail tugas DTS (hanya untuk migrasi logis)
Jika migrasi logis digunakan dan Anda perlu menyelidiki error (seperti kegagalan pemeriksaan awal atau latensi replikasi tinggi), lihat detail tugas DTS.
Masuk ke Konsol PolarDB dan klik ID kluster.
Di halaman Basic Information, temukan bagian RDS Migration dan klik DTS Data Synchronization Task.

Di konsol DTS, temukan tugas sinkronisasi data. Dari halaman ini, Anda dapat melihat detail kegagalan pemeriksaan awal, status tugas, dan log tugas.


FAQ
Apa perbedaan antara klon dan peningkatan instans RDS ke PolarDB?
| Tingkatkan RDS ke PolarDB | Klon RDS ke PolarDB | |
|---|---|---|
| Sinkronisasi data inkremental | Ya | Tidak |
| Instans sumber terpengaruh | Tidak | Tidak |
| Migrasi lintas versi | Ya | Ya |
Klon membuat salinan independen dari data sumber tanpa menjaga sinkronisasi instans sumber. Peningkatan menjaga sinkronisasi antara sumber dan tujuan selama migrasi sehingga Anda dapat beralih dengan kehilangan data minimal.
Apakah klon memengaruhi instans RDS sumber?
Tidak. Klon tidak mengganggu instans sumber tetapi mengonsumsi sebagian sumber dayanya selama proses berlangsung.
Apa yang terjadi ketika saya membatalkan migrasi?
Membatalkan migrasi memiliki efek berikut:
Tautan sinkronisasi antara instans sumber dan kluster tujuan terputus.
Kluster tujuan menjadi dapat dibaca dan ditulis tetapi tidak dilepas secara otomatis. Lepaskan kluster jika Anda tidak lagi membutuhkannya untuk menghindari tagihan berkelanjutan.
Anda dapat memilih apakah akan menonaktifkan binary logging pada kluster saat membatalkan secara manual. Binary logging tidak dinonaktifkan ketika migrasi dibatalkan secara otomatis.
Menonaktifkan binary logging sedikit meningkatkan kinerja tulis. Setelah dinonaktifkan, log biner yang ada tetap disimpan. Untuk menghapusnya, kurangi periode retensi dan tunggu log tersebut dihapus secara otomatis, lalu nonaktifkan binary logging. Kluster akan restart secara otomatis setelah binary logging dinonaktifkan. Restart selesai dalam waktu 5 menit, dengan gangguan layanan sekitar 40 detik. Durasi tepatnya bergantung pada jumlah data dan jumlah tabel. Nonaktifkan binary logging selama jam sepi dan pastikan aplikasi Anda dapat terhubung kembali secara otomatis.
Referensi API
| API | Operasi |
|---|---|
| CreateDBCluster | Membuat kluster PolarDB. Untuk mengklon dari instans RDS, atur CreationOption menjadi CloneFromRDS. |
Langkah selanjutnya
Perbarui titik akhir koneksi database aplikasi Anda ke titik akhir kluster PolarDB. Lihat Kelola titik akhir kluster.