Topik ini menjelaskan cara mengklon instans ApsaraDB RDS for MySQL ke kluster PolarDB for MySQL hanya dengan satu klik, serta mencakup dua metode kloning, manfaat dan perbedaannya, prasyarat, batasan, serta penagihan.
Catatan penggunaan
Saat Anda mengklon instans ApsaraDB RDS for MySQL ke kluster PolarDB, data inkremental dari instans sumber tidak disinkronkan ke kluster PolarDB tujuan.
Jika Anda ingin membuat kluster PolarDB baru sekaligus menyinkronkan data inkremental dari instans RDS sumber ke kluster PolarDB secara real time untuk migrasi tanpa downtime, lihat Peningkatan Satu Klik dari RDS MySQL ke PolarDB for MySQL.
Ikhtisar
PolarDB memungkinkan Anda mengklon data dari instans ApsaraDB RDS for MySQL ke kluster PolarDB for MySQL baru hanya dengan satu klik. Fitur ini membuat kluster PolarDB baru yang memiliki data yang sama dengan instans RDS sumber. Kluster PolarDB baru mencakup akun, database, daftar putih IP, dan parameter yang diperlukan dari instans sumber.
Tabel berikut menjelaskan versi dan jenis storage yang didukung untuk instans ApsaraDB RDS for MySQL sumber dan kluster PolarDB for MySQL tujuan.
-
Anda dapat mengklon instans ApsaraDB RDS for MySQL sumber dengan all versions dan all storage types. Baik instans tersebut menjalankan MySQL 5.6, 5.7, atau 8.0, serta menggunakan SSD lokal atau cloud disk, Anda dapat mengklonnya ke kluster PolarDB for MySQL hanya dengan satu klik.
-
Anda dapat mengkloning instans ApsaraDB RDS for MySQL ke kluster PolarDB for MySQL yang menjalankan same or a different version. Misalnya, Anda dapat mengkloning instans ApsaraDB RDS for MySQL 5.6 ke kluster PolarDB for MySQL 5.6 atau ke kluster PolarDB for MySQL 8.0.
Kloning satu klik untuk instans ApsaraDB RDS for MySQL 8.0 dan instans ApsaraDB RDS for MySQL yang menggunakan cloud disk ke PolarDB for MySQL, serta kloning satu klik lintas versi dari ApsaraDB RDS for MySQL ke PolarDB for MySQL menggunakan migrasi logis (sinkronisasi data DTS).
Migrasi fisik dan logis
Fitur klon satu klik mendukung dua metode: migrasi fisik (replikasi fisik) dan migrasi logis (sinkronisasi data menggunakan DTS).
-
Physical migration (physical replication): Metode ini menyalin seluruh data dari instans ApsaraDB RDS for MySQL sumber ke kluster PolarDB for MySQL yang baru dibuat dengan menggunakan replikasi fisik.
-
Logical migration (data synchronization by using DTS): Metode ini menggunakan Data Transmission Service (DTS) untuk membuat tugas sinkronisasi data yang memigrasikan skema dan data penuh dari instans ApsaraDB RDS for MySQL sumber ke kluster PolarDB for MySQL yang baru dibuat.
Tabel berikut membandingkan kedua metode migrasi tersebut.
|
Item |
Migrasi fisik (replikasi fisik) |
Migrasi logis (sinkronisasi data menggunakan DTS) |
|
Memerlukan DTS |
Tidak |
Ya |
|
Mendukung sinkronisasi data inkremental |
Tidak |
Tidak |
|
Mempengaruhi operasi pada instans RDS sumber |
Tidak |
Tidak |
|
Mendukung versi MySQL yang berbeda untuk sumber dan tujuan |
Hanya mendukung kloning versi yang sama untuk instans yang menjalankan MySQL 5.6 atau 5.7 dan menggunakan disk lokal. |
Mendukung kloning versi yang sama maupun lintas versi. |
|
Perlu membuat akun database di kluster PolarDB setelah kloning |
Tidak. Setelah kloning, kluster PolarDB berisi akun dari instans RDS sumber. |
Tidak. Setelah kloning, kluster PolarDB berisi akun dari instans RDS sumber. |
|
Mendukung migrasi database yang baru ditambahkan |
Tidak |
Tidak |
Tabel berikut menjelaskan edisi dan jenis storage ApsaraDB RDS for MySQL yang didukung.
|
Versi RDS |
Edisi Dasar |
Edisi Ketersediaan Tinggi |
Edisi Kluster |
Edisi Perusahaan Tiga Node |
|
5.6 |
N/A |
Disk lokal |
N/A |
Disk lokal |
|
5.7 |
cloud disk |
Disk lokal, cloud disk |
cloud disk |
Disk lokal |
|
8.0 |
cloud disk |
Disk lokal, cloud disk |
cloud disk |
Disk lokal |
Migrasi fisik hanya digunakan ketika Anda mengklon instans ApsaraDB RDS for MySQL 5.6 atau 5.7 Edisi Ketersediaan Tinggi yang menggunakan SSD lokal ke kluster PolarDB for MySQL dengan versi yang sama. Dalam semua skenario lainnya, migrasi logis digunakan untuk mengklon instans ApsaraDB RDS for MySQL ke kluster PolarDB for MySQL dengan versi yang sama atau berbeda.
Manfaat
Proses kloning menjamin tidak ada kehilangan data.
Prasyarat
-
Jika Anda menggunakan migrasi fisik, instans RDS sumber harus memenuhi persyaratan versi berikut. Migrasi logis tidak memiliki persyaratan versi.
-
Untuk ApsaraDB RDS for MySQL 5.6, versi minor harus 20190815 atau lebih baru.
-
Untuk ApsaraDB RDS for MySQL 5.7, versi minor harus 20200331 atau lebih baru.
CatatanAnda dapat menjalankan perintah
SHOW VARIABLES LIKE '%rds_release_date%';untuk memeriksa versi minor instans RDS sumber. Jika versi minornya lebih lama dari versi yang dipersyaratkan, Anda dapat meningkatkannya ke versi terbaru. Untuk informasi selengkapnya, lihat Peningkatan versi mesin minor. -
-
Fitur klon satu klik hanya didukung untuk instans RDS sumber yang tabelnya menggunakan mesin penyimpanan InnoDB atau X-Engine.
-
Instans RDS sumber tidak boleh memiliki TDE atau SSL yang diaktifkan. Jika fitur tersebut diaktifkan, Anda dapat membuat tugas migrasi data DTS secara manual untuk memigrasikan instans RDS sumber ke PolarDB. Untuk informasi selengkapnya, lihat Migrasi data dari ApsaraDB RDS for MySQL ke PolarDB for MySQL.
-
Jika instans RDS sumber berada dalam Mode Keamanan Tinggi (yang menggunakan proksi database), Anda harus membuat akun istimewa atau beralih ke Mode Performa Tinggi untuk melakukan klon satu klik. Untuk informasi selengkapnya, lihat Buat akun dan [Perubahan Produk/fitur] Peningkatan tautan jaringan RDS.

Batasan
-
Anda hanya dapat mengklon instans ApsaraDB RDS for MySQL ke kluster PolarDB for MySQL dengan versi yang sama atau lebih baru. Kloning ke versi yang lebih lama tidak didukung.
Misalnya, Anda tidak dapat mengklon instans ApsaraDB RDS for MySQL 5.7 ke kluster PolarDB for MySQL 5.6, atau mengklon instans ApsaraDB RDS for MySQL 8.0.2 ke kluster PolarDB for MySQL 8.0.1.
-
Metode migrasi fisik memiliki batasan berikut:
-
Migrasi lintas wilayah tidak didukung.
-
Anda tidak dapat mengubah parameter instans RDS sumber selama migrasi.
-
-
Metode migrasi logis memiliki batasan berikut:
-
Migrasi lintas wilayah tidak didukung.
-
Anda tidak dapat mengubah parameter instans RDS sumber selama migrasi.
-
Database sumber memiliki batasan berikut:
Jenis
Deskripsi
Batasan database sumber
-
Tabel yang akan disinkronkan harus memiliki PRIMARY KEY atau kendala unik, dan field dalam kendala tersebut harus unik. Jika tidak, data duplikat dapat muncul di database tujuan.
-
Jika Anda menyinkronkan pada tingkat tabel dan perlu mengedit objek (seperti memetakan nama kolom), satu tugas sinkronisasi mendukung maksimal 1.000 tabel. Jika melebihi batas ini, pengiriman tugas akan gagal. Dalam kasus ini, kami menyarankan membagi tabel menjadi beberapa tugas atau mengonfigurasi tugas untuk menyinkronkan seluruh database.
-
Log biner: Log biner harus diaktifkan pada instans sumber, dan parameter
binlog_row_imageharus diatur kefull. Jika tidak, pemeriksaan awal akan gagal, dan tugas sinkronisasi data tidak dapat dimulai. Untuk informasi selengkapnya, lihat Konfigurasi parameter instans.
-
-
Batasan lainnya:
Jenis
Deskripsi
Batasan lainnya
-
Sebelum memulai, evaluasi performa database sumber dan tujuan. Kami menyarankan melakukan sinkronisasi data selama jam sepi. Sinkronisasi data penuh awal mengonsumsi sumber daya baca dan tulis pada kedua database, yang dapat meningkatkan beban mereka.
-
Sinkronisasi penuh awal melakukan operasi INSERT secara konkuren, yang dapat menyebabkan fragmentasi tabel di database tujuan. Akibatnya, ruang tabel di instans tujuan mungkin lebih besar daripada di instans sumber setelah sinkronisasi awal selesai.
-
Jika Anda menyinkronkan tabel individual (bukan seluruh database), jangan lakukan perubahan DDL online pada tabel sumber menggunakan alat seperti gh-ost atau pt-online-schema-change selama sinkronisasi data. Hal ini dapat menyebabkan sinkronisasi gagal.
Anda dapat menggunakan Data Management Service (DMS) untuk melakukan perubahan DDL online. Untuk informasi selengkapnya, lihat Ubah skema tanpa mengunci tabel.
-
Selama sinkronisasi DTS, jangan menulis data eksternal apa pun ke database tujuan. Hal ini dapat menyebabkan ketidakkonsistenan data antara sumber dan tujuan. Misalnya, jika Anda menggunakan DMS untuk melakukan perubahan DDL online saat data eksternal sedang ditulis ke tujuan, kehilangan data dapat terjadi.
-
Secara default, DTS menonaktifkan kendala kunci asing pada database tujuan selama sinkronisasi. Oleh karena itu, operasi kaskade seperti
DELETEdari database sumber tidak disinkronkan ke tujuan.
-
-
Penagihan
-
Aturan penagihan untuk migrasi fisik adalah sebagai berikut:
Migrasi dari ApsaraDB RDS ke PolarDB tidak dikenai biaya. Anda hanya dikenai biaya untuk kluster PolarDB yang dibeli. Untuk informasi selengkapnya tentang biaya kluster PolarDB, lihat Ikhtisar item yang dapat ditagihkan.
-
Aturan penagihan untuk migrasi logis adalah sebagai berikut:
Selain biaya kluster PolarDB, Anda juga dikenai biaya untuk tugas sinkronisasi DTS. Namun, fitur ini saat ini berada dalam periode uji coba. Tugas sinkronisasi gratis selama 30 hari pertama. Uji coba gratis ini tidak tersedia untuk beberapa jenis akun, termasuk pengguna operator jaringan virtual (VNO), pengguna Jushita, pengguna situs web internasional Alibaba Cloud, dan Pengguna RAM. Detailnya adalah sebagai berikut:
Objek migrasi
Biaya
Sinkronisasi skema dan sinkronisasi data penuh
Tidak ada biaya yang dikenakan untuk tugas sinkronisasi dalam waktu 30 hari sejak pembuatannya.
Setelah 30 hari, tugas sinkronisasi akan dibatalkan.
CatatanAnda dapat membuka halaman Tugas Sinkronisasi Data di konsol DTS baru untuk melihat sisa waktu tugas tersebut.
Bagian berikut menjelaskan cara mengklon instans ApsaraDB RDS for MySQL ke kluster PolarDB for MySQL.
Pemeriksaan Awal (hanya untuk migrasi logis)
Periksa peran terkait layanan PolarDB
Sebelum menggunakan migrasi logis (sinkronisasi data menggunakan DTS) untuk mengklon instans, periksa apakah peran terkait layanan PolarDB telah dibuat. Lakukan langkah-langkah berikut:
-
Dengan Akun Alibaba Cloud Anda (akun utama), buka halaman Manajemen Identitas > Role di Konsol RAM.
-
Periksa apakah ada peran terkait layanan bernama AliyunServiceRoleForPolarDB dalam daftar role, seperti yang ditunjukkan pada gambar berikut.

-
Jika ada, lewati pemeriksaan ini.
-
Jika tidak ada, lanjutkan ke langkah berikutnya.
-
-
Klik Create Role. Pada halaman Create Role, klik Create Service-linked Role di pojok kanan atas.

-
Pada halaman Create Service-linked Role, pilih AliyunServiceRoleForPolarDB untuk Trusted Cloud Service, lalu klik Create Service-linked Role untuk menyelesaikan pembuatan.

Hapus akun sistem berlebih
Untuk memastikan kompatibilitas antara struktur akun sistem ApsaraDB RDS for MySQL dan PolarDB, serta mencegah akun sistem kluster PolarDB tujuan ditimpa, instans RDS sumber tidak boleh memiliki akun root dan aliyun_root sekaligus. Sebelum kloning, hapus akun sistem berlebih dari instans RDS sumber.
Tabel berikut mencantumkan nama akun sistem yang benar untuk setiap versi ApsaraDB RDS for MySQL.
|
Versi RDS MySQL |
Akun sistem yang benar |
|
ApsaraDB RDS for MySQL 5.6 |
root |
|
ApsaraDB RDS for MySQL 5.7 |
aliyun_root |
|
ApsaraDB RDS for MySQL 8.0 |
aliyun_root |
Untuk setiap versi, Anda harus menghapus akun sistem selain yang tercantum sebagai akun yang benar dalam tabel. Misalnya, akun sistem yang benar untuk instans ApsaraDB RDS for MySQL 5.7 adalah aliyun_root. Jika Anda membuat akun root secara manual di konsol, Anda harus menghapusnya. Sebelum menghapus akun tersebut, pastikan bisnis Anda tidak menggunakannya.
Akun sistem dapat dibuat secara manual oleh pengguna atau tersisa dari peningkatan versi sistem. Dalam beberapa kasus, akun ini mungkin tidak terlihat di konsol.
Contoh
Contoh berikut menunjukkan cara menghapus akun sistem berlebih dari instans ApsaraDB RDS for MySQL 5.6:
-
Gunakan akun istimewa untuk terhubung ke instans.
-
Temukan semua akun sistem
rootdanaliyun_root.SELECT * FROM mysql.user WHERE `user` IN ('root', 'aliyun_root'); -
Hapus akun sistem berlebih. Akun sistem yang benar untuk ApsaraDB RDS for MySQL 5.6 adalah
root. Oleh karena itu, Anda harus menghapus akunaliyun_root.DELETE FROM mysql.user WHERE `user` = 'aliyun_root' LIMIT n;
Langkah 1: Klon dari instans RDS
Operasi ini membuat kluster PolarDB yang memiliki data yang sama dengan instans RDS sumber.
-
Masuk ke Konsol PolarDB.
Di pojok kiri atas, pilih wilayah tempat kluster ditempatkan.
-
Klik Create Cluster.
-
Pilih Billing Method: Subscription, Pay-As-You-Go, atau Serverless.
-
Subscription: Anda membayar node komputasi saat membuat kluster. Ruang penyimpanan ditagih per jam berdasarkan volume data aktual, dengan biaya dipotong dari saldo akun Anda.
-
Pay-as-you-go: Tidak perlu pembayaran di muka. Baik node komputasi maupun ruang penyimpanan (berdasarkan volume data aktual) ditagih per jam, dengan biaya dipotong dari saldo akun Anda.
-
Serverless: Tidak perlu pembayaran di muka. Layanan ini secara dinamis menskalakan sumber daya seperti node komputasi, ruang penyimpanan, dan proksi database berdasarkan permintaan aktual. Anda ditagih berdasarkan penggunaan aktual sumber daya yang diskalakan tersebut.
-
-
Konfigurasikan parameter berikut.
CatatanUntuk informasi tentang parameter yang tidak dijelaskan dalam tabel berikut, lihat Beli kluster.
Parameter
Description
Creation Method
Pilih Clone from RDS.
Region
Pilih wilayah tempat instans ApsaraDB RDS for MySQL sumber berada.
CatatanKluster PolarDB baru dibuat di wilayah yang sama.
Source RDS Version
Versi instans RDS sumber. Anda dapat memilih 5.6, 5.7, atau 8.0.
Source RDS Instance
Pilih instans RDS sumber. Instans read-only tidak termasuk.
Database Engine
Versi database engine untuk kluster PolarDB tujuan. Anda dapat memilih versi yang sama dengan instans RDS sumber atau versi yang berbeda.
Node Specifications
Pilih spesifikasi sesuai kebutuhan Anda. Kami menyarankan memilih spesifikasi yang setara atau lebih tinggi daripada instans RDS sumber. Untuk informasi selengkapnya mengenai spesifikasi node PolarDB, lihat Spesifikasi node komputasi Edisi Perusahaan.
Di pojok kanan atas, tinjau detail konfigurasi kluster, atur Subscription Duration (untuk kluster subscription) dan Quantity, serta tentukan apakah akan mengaktifkan Auto-renewal.
Baca dan setujui syarat layanan, lalu klik Buy Now.
Pada halaman Payment, konfirmasi detail pesanan dan metode pembayaran, lalu klik Purchase.
CatatanSetelah pembayaran berhasil, pembuatan kluster memerlukan waktu 10 hingga 15 menit. Anda kemudian dapat melihat kluster baru di daftar Clusters.
Saat status kluster adalah Creating, kluster tersebut tidak tersedia. Kluster siap digunakan hanya ketika statusnya berubah menjadi Running.
Pastikan Anda telah memilih wilayah yang benar. Jika tidak, Anda tidak akan melihat kluster yang telah Anda buat.
-
Masuk ke Konsol PolarDB dan lihat status kluster PolarDB baru.
CatatanJika Anda melakukan kloning menggunakan migrasi logis (sinkronisasi data menggunakan DTS), klik ID kluster untuk membuka halaman Basic Information dan lihat status migrasi. Jika status migrasi RDS berubah menjadi Pre-check failed, tangani masalah tersebut sesuai dengan Error Message.

Sebagai contoh, jika terdapat Pemicu di Instans RDS sumber, Pemeriksaan Awal akan gagal dengan pesan kesalahan "Terdapat pemicu di instans RDS". Untuk melanjutkan, hapus terlebih dahulu Pemicu dari Instans RDS sumber, lalu klik Continue migrating. Alternatifnya, klik Give up migration dan buat Tugas migrasi secara manual di Konsol DTS. Untuk informasi selengkapnya, lihat Mengonfigurasi Tugas sinkronisasi atau migrasi ketika Pemicu ada di database sumber.
Anda juga dapat memilih untuk Give up migration pada langkah ini. Untuk informasi tentang konsekuensinya, lihat FAQ.
Langkah 2: Lihat detail tugas sinkronisasi data
Jika Anda menggunakan migrasi logis, klik ID kluster untuk membuka halaman Basic Information dan lihat status migrasi. Jika terjadi kesalahan migrasi (seperti kegagalan pemeriksaan awal) atau pengecualian lain (seperti latensi replikasi tinggi), Anda dapat membuka halaman detail tugas sinkronisasi data DTS yang sesuai untuk melihat informasi lebih lanjut.
-
Masuk ke Konsol PolarDB.
-
Temukan kluster tujuan dan klik ID-nya.
-
Pada halaman Basic Information, di bagian RDS Migration, klik nama tugas di bawah DTS Data Synchronization Task untuk membuka daftar tugas sinkronisasi data di konsol DTS.

-
Temukan tugas sinkronisasi data yang sesuai. Anda dapat melihat detail kegagalan pemeriksaan awal, detail tugas, log tugas, dan lainnya.


FAQ
-
T: Apa perbedaan antara meningkatkan instans ApsaraDB RDS for MySQL dan mengkloningnya ke kluster PolarDB for MySQL?
J: Tabel berikut menjelaskan perbedaannya.
Item
Klon satu klik ApsaraDB RDS for MySQL ke PolarDB for MySQL
Mendukung sinkronisasi data inkremental
Ya
Tidak
Mempengaruhi operasi pada instans RDS sumber
Tidak
Tidak
Mendukung versi MySQL yang berbeda untuk sumber dan tujuan
Ya
Ya
-
T: Apakah kloning dari instans RDS memengaruhi instans sumber?
J: Tidak memengaruhi operasi normal instans RDS sumber, tetapi klon data penuh mengonsumsi sebagian sumber daya dari instans sumber.
Referensi API
|
API |
Deskripsi |
|
Membuat kluster PolarDB. Catatan
Saat Anda mengklon instans, parameter CreationOption harus diatur ke CloneFromRDS. |
Langkah selanjutnya
Setelah migrasi selesai, Anda harus segera memperbarui string koneksi database aplikasi Anda ke titik akhir kluster PolarDB. Untuk informasi selengkapnya, lihat Kelola titik akhir.