Topik ini menjawab pertanyaan yang sering diajukan mengenai peningkatan instans RDS for MySQL menjadi kluster PolarDB for MySQL.
T: Apa yang harus saya lakukan jika suatu item pemeriksaan dalam evaluasi migrasi gagal?
Kategori
Item pemeriksaan
Solusi
Catatan
Event Check
Instans RDS sumber memiliki event, tetapi DTS tidak mendukung sinkronisasi event. Anda harus melakukan sinkronisasi event secara manual ke kluster PolarDB tujuan.
Verifikasi Informasi Dasar
Status Berjalan Instans Sumber
Instans ApsaraDB RDS sumber harus berada dalam status Running.
Status Baca/Tulis Instans Sumber
Instans ApsaraDB RDS sumber harus berada dalam status Running dan dalam mode Baca/Tulis.
Mode Akun Instans Sumber
Jika Database Proxy (Safe Mode) diaktifkan untuk instans ApsaraDB RDS for MySQL, buat akun istimewa atau ubah mode koneksi jaringan instans ApsaraDB RDS for MySQL ke mode high-performance. Untuk informasi selengkapnya, lihat Buat akun dan [Perubahan produk/Perubahan fitur] Mode koneksi jaringan instans ApsaraDB RDS ditingkatkan.
Peran Terkait Layanan untuk PolarDB
Peran terkait layanan untuk PolarDB telah dibuat untuk akun tersebut.
Untuk informasi selengkapnya tentang cara membuat peran terkait layanan PolarDB, lihat Periksa apakah peran terkait layanan untuk PolarDB telah dibuat. Anda juga dapat membuat peran terkait layanan PolarDB dengan memanggil operasi API.
Verifikasi Ketergantungan Tugas Migrasi
Izin DTS
Akun Alibaba Cloud Anda harus memiliki izin untuk mengakses sumber daya cloud melalui DTS.
Untuk informasi selengkapnya, lihat Berikan otorisasi kepada DTS untuk mengakses sumber daya Alibaba Cloud.
Apakah Instans Sumber Kosong
Database telah dibuat di instans ApsaraDB RDS sumber. Anda harus membuat database di instans tersebut sebelum dapat melakukan migrasi data.
Verifikasi Mesin Penyimpanan Tabel Instans Sumber
Mesin penyimpanan tabel untuk instans RDS sumber harus berupa InnoDB atau X-Engine.
Verifikasi Pemicu pada Instans Sumber
Jika pemicu telah dibuat untuk instans ApsaraDB RDS sumber, hapus pemicu tersebut terlebih dahulu. Jika tidak, proses migrasi akan terganggu.
CatatanAnda dapat mengeksekusi pernyataan berikut untuk menghapus pemicu di instans ApsaraDB RDS sumber sesuai kebutuhan bisnis Anda.
-- Menampilkan semua pemicu yang ada di instans ApsaraDB RDS sumber. SHOW TRIGGERS; -- Menghapus pemicu tertentu dari instans ApsaraDB RDS sumber. DROP TRIGGER trigger_name;Anda dapat membuat pemicu secara manual di kluster PolarDB tujuan setelah proses migrasi selesai.
Verifikasi Tabel Tanpa Primary Key di Instans Sumber
Jika instans ApsaraDB RDS sumber berisi tabel tanpa primary key, data duplikat mungkin terjadi di kluster PolarDB tujuan setelah data disinkronkan.
Anda dapat menghubungkan ke database pada instans ApsaraDB RDS sumber menggunakan akun istimewa dan mengeksekusi pernyataan SQL berikut untuk mengkueri tabel tanpa primary key:
SELECT t1.table_schema, t1.table_name FROM information_schema.TABLES t1 LEFT OUTER JOIN information_schema.TABLE_CONSTRAINTS t2 ON t1.table_schema = t2.TABLE_SCHEMA AND t1.table_name = t2.TABLE_NAME AND t2.CONSTRAINT_NAME IN ("PRIMARY") WHERE t2.table_name IS NULL AND t1.table_type = "BASE TABLE" AND t1.TABLE_SCHEMA NOT IN ("information_schema", "performance_schema", "mysql", "sys")Anda dapat menambahkan primary key ke tabel yang tidak memiliki primary key.
Jika Anda memastikan bahwa data duplikat dapat diterima, Anda dapat mengabaikan hasil evaluasi ini dan memilih Continue ketika pesan error muncul saat Anda Meningkatkan instans ApsaraDB RDS for MySQL menjadi kluster PolarDB for MySQL.
Verifikasi Informasi Penting
Verifikasi Akun Root Instans Sumber
Untuk memastikan kompatibilitas antara ApsaraDB RDS for MySQL dan PolarDB dalam hal struktur akun sistem dan mencegah akun sistem kluster PolarDB tujuan ditimpa selama migrasi, pastikan akun root dan aliyun_root tidak ada secara bersamaan di instans ApsaraDB RDS sumber. Untuk informasi selengkapnya, lihat Hapus akun sistem berlebih dari instans ApsaraDB RDS sumber.
T: Apa perbedaan antara peningkatan instans ApsaraDB RDS for MySQL menjadi kluster PolarDB for MySQL dan kloning instans ApsaraDB RDS for MySQL menjadi kluster PolarDB for MySQL?
J: Tabel berikut menjelaskan perbedaannya.
Item
Peningkatan instans RDS for MySQL menjadi kluster PolarDB for MySQL
Kloning instans ApsaraDB RDS for MySQL menjadi kluster PolarDB for MySQL
Mendukung migrasi atau sinkronisasi data inkremental
Dukungan
Tidak
Mempengaruhi operasi pada instans RDS sumber
Tidak berpengaruh
Tidak berdampak.
Apakah versi MySQL sumber dan tujuan boleh berbeda?
Bisa berbeda.
Bisa berbeda
T: Apakah spesifikasi node kluster PolarDB for MySQL tujuan harus sama dengan tipe instans instans RDS for MySQL sumber?
J: Tidak harus. Anda dapat memilih spesifikasi kluster PolarDB for MySQL sesuai kebutuhan. Kami menyarankan agar spesifikasinya tidak lebih rendah daripada tipe instans RDS sumber.
T: Apakah saya perlu membeli kluster PolarDB for MySQL sebelum peningkatan?
J: Anda tidak perlu membeli kluster PolarDB for MySQL terlebih dahulu. Proses peningkatan akan membuat kluster PolarDB yang berisi data yang sama dengan instans RDS sumber.
T: Apakah migrasi dari RDS memengaruhi instans RDS sumber?
J: Tidak, tidak memengaruhi. Operasi normal instans RDS sumber tidak terganggu.
T: Apakah migrasi lancar memengaruhi performa instans RDS sumber?
J: Migrasi tidak memengaruhi ketersediaan instans RDS sumber. Namun, karena migrasi data melibatkan operasi kueri, hal ini mengonsumsi sebagian performa kueri instans RDS sumber.
T: Apakah migrasi lancar memengaruhi bisnis saya?
J: Migrasi lancar memastikan tidak ada data yang hilang. Waktu downtime kurang dari 10 menit. Selama downtime, aplikasi bisnis Anda dijeda untuk mencegah pembuatan data baru, tetapi database tidak dihentikan. Anda juga dapat melakukan rollback migrasi jika diperlukan.
T: Apa yang terjadi jika saya membatalkan migrasi?
J: Pembatalan migrasi memiliki efek berikut:
Tautan sinkronisasi antara kluster sumber dan tujuan diputus, dan kedua kluster tidak lagi terkait.
Kluster tujuan menjadi read-write dan tidak dilepas secara otomatis. Jika Anda tidak lagi memerlukan kluster ini, segera lepaskan untuk menghindari biaya yang tidak perlu.
Saat Anda membatalkan migrasi secara manual, Anda dapat memilih apakah akan menonaktifkan binary logging untuk kluster tersebut. Binary logging tidak dinonaktifkan jika migrasi dibatalkan secara otomatis.
CatatanMenonaktifkan binary logging sedikit meningkatkan performa write. File log biner yang sudah ada tetap dipertahankan setelah Anda menonaktifkan binary logging. Sebelum menonaktifkan binary logging, Anda dapat memperpendek periode retensi file log biner dan menunggu file yang tidak diinginkan dihapus secara otomatis. Setelah menonaktifkan binary logging, kluster akan restart secara otomatis. Restart selesai dalam waktu 5 menit. Selama restart, terjadi pemutusan koneksi sementara sekitar 40 detik. Durasi spesifik tergantung pada volume data dan jumlah tabel. Kami menyarankan Anda melakukan operasi ini pada jam sepi dan memastikan aplikasi Anda memiliki mekanisme reconnect.
T: Setelah peningkatan selesai dan saya mengalihkan bisnis saya ke PolarDB, apakah saya perlu mengubah alamat koneksi di aplikasi saya?
J: Anda dapat memilih Switch with Endpoints (Connection Changes Not Required) selama alih bencana. Sistem secara otomatis menukar endpoint RDS dan PolarDB. Aplikasi Anda kemudian akan terhubung secara otomatis ke PolarDB tanpa perlu perubahan konfigurasi apa pun.
T: Jika akun istimewa kluster tujuan kehilangan beberapa izin selama migrasi dan peningkatan, apakah saya dapat mengubah izin akun tersebut selama proses berlangsung?
J: Tidak, Anda tidak dapat melakukannya. Izin akun tidak dapat diubah selama proses migrasi dan peningkatan. Izin akun istimewa kluster tujuan disinkronkan dari instans sumber. Jika akun istimewa kehilangan izin default setelah peningkatan, Anda dapat mengatur ulang izinnya di halaman Manajemen Akun di Konsol.
T: Saya memilih Switch with Endpoints (Connection Changes Not Required) untuk migrasi. Setelah migrasi selesai, mengapa kluster PolarDB masih menggunakan alamat koneksi baru?
J: Endpoint hanya dapat ditukar jika endpoint yang sesuai tersedia baik di instans RDS sumber maupun di kluster PolarDB tujuan. Secara default, hanya primary endpoint untuk jaringan pribadi yang dapat dialihkan. Untuk mengalihkan alamat koneksi lainnya, Anda harus membuat endpoint yang sesuai di kluster tujuan sebelum alih bencana. Jika tidak, alamat koneksi tidak akan dialihkan. Untuk informasi selengkapnya tentang cara membuat alamat koneksi untuk kluster PolarDB dan instans RDS, lihat Kelola alamat koneksi dan Atur alamat koneksi.
T: Instans RDS sumber juga berisi instans read-only. Jika saya memilih Switch with Endpoints (Connection Changes Not Required), apakah alamat koneksi instans read-only juga dapat dialihkan?
J: Ya. Saat Anda memilih Switch with Endpoints (No application changes required), alamat koneksi instans RDS read-only dapat dialihkan jika kluster PolarDB memiliki cluster endpoint atau custom endpoint yang sesuai.
T: Setelah alih bencana berhasil, mengapa saya tidak dapat terhubung ke database PolarDB, atau mengapa koneksi bersifat read-only?
J: Setelah nama domain dialihkan, masalah koneksi dapat terjadi karena cache DNS lokal di server Anda. Selama waktu hidup (TTL) cache tersebut, aplikasi Anda mungkin gagal terhubung ke database atau hanya dapat membuat koneksi read-only. Kami menyarankan Anda merefresh cache DNS di server Anda.
T: Sebelum peningkatan satu-klik ke PolarDB, apakah saya dapat terlebih dahulu melakukan uji kompatibilitas dan penilaian workload migrasi sederhana?
J: Ya, Anda dapat melakukannya. Anda dapat mengkloning data ke kluster PolarDB untuk melakukan uji kompatibilitas dan evaluasi workload. Untuk informasi selengkapnya, lihat Kloning instans ApsaraDB RDS for MySQL menjadi kluster PolarDB for MySQL. Setelah Anda memastikan tidak ada masalah, Anda dapat mengikuti langkah-langkah dalam topik ini untuk melakukan peningkatan satu-klik ke PolarDB.
T: Setelah alih bencana migrasi, mengapa tombol Complete Migration tidak terlihat di Konsol PolarDB?
J: Jika Anda telah mengklik tombol Complete Migration, tombol tersebut disembunyikan untuk mencegah Anda melakukan operasi tersebut lagi.
T: Setelah peningkatan satu-klik ke PolarDB, apakah saya masih perlu membuat akun dan kata sandi yang sama dari instans RDS sumber di kluster PolarDB tujuan?
J: Tidak, Anda tidak perlu melakukannya. Setelah peningkatan, kluster PolarDB berisi akun, kata sandi, database, daftar putih IP, dan parameter yang diperlukan dari instans RDS sumber.
T: Instans RDS sumber telah mengaktifkan SSL. Bagaimana cara saya memigrasikannya ke kluster PolarDB?
J: Ya, instans RDS yang telah mengaktifkan SSL dapat ditingkatkan menjadi kluster PolarDB menggunakan fitur peningkatan satu-klik. Anda dapat melakukan migrasi menggunakan metode Migrasi Fisik atau Migrasi Logis.
CatatanJika Anda memilih Switch with Endpoint untuk mengalihkan alamat koneksi yang telah mengaktifkan SSL, pastikan SSL juga diaktifkan untuk alamat koneksi yang sesuai di kluster PolarDB.
T: Instans RDS sumber telah mengaktifkan Transparent Data Encryption (TDE). Bagaimana cara saya memigrasikannya ke kluster PolarDB?
J: Ya, instans RDS yang telah mengaktifkan TDE dapat ditingkatkan menjadi kluster PolarDB menggunakan fitur peningkatan satu-klik. Anda dapat melakukan migrasi menggunakan metode Migrasi Fisik atau Migrasi Logis.
T: Apakah peningkatan satu-klik mendukung peningkatan lintas versi? Misalnya, meningkatkan instans RDS MySQL 5.6 menjadi kluster PolarDB for MySQL 8.0?
J: Metode Migrasi Logis (sinkronisasi data DTS) mendukung peningkatan lintas versi untuk fitur peningkatan satu-klik.
T: Jika tugas sinkronisasi data DTS sudah berjalan di instans RDS sumber sebelum peningkatan satu-klik ke PolarDB for MySQL, apakah peningkatan tersebut akan memengaruhi tugas ini?
J: Tidak, tidak akan memengaruhi. Selama peningkatan satu-klik, salinan data lengkap pertama kali direplikasi dari instans RDS ke kluster PolarDB baru. Kemudian, data inkremental terus-menerus disinkronkan ke kluster PolarDB. Sumber data tugas DTS yang sudah ada tetap merupakan instans RDS sumber, dan peningkatan ke PolarDB tidak memengaruhi operasi instans RDS sumber.
Setelah alih bencana migrasi, instans RDS sumber menjadi read-only. Jika instans RDS tersebut merupakan tujuan tugas sinkronisasi data DTS, operasi write ke instans tersebut akan gagal. Dalam kasus ini, Anda harus mengubah tujuan tugas DTS menjadi kluster PolarDB baru. Jika instans RDS merupakan sumber tugas DTS, kami menyarankan Anda juga segera mengubah sumber tugas DTS menjadi kluster PolarDB baru setelah alih bencana.
Saat ini, Anda hanya dapat mengubah instans sumber atau tujuan tugas DTS melalui OpenAPI. Untuk informasi selengkapnya, lihat Ubah instans sumber atau tujuan tugas DTS.
T: Saat saya mencoba melepas atau mengubah zona instans RDS, pesan error "The specified operation is disabled while the instance is undergoing an engine migration" muncul. Apa yang harus saya lakukan?
J: Error ini terjadi karena instans RDS sedang ditingkatkan menggunakan fitur peningkatan satu-klik dari RDS for MySQL ke PolarDB for MySQL. Buka Konsol PolarDB untuk memeriksa apakah kluster PolarDB sedang menjalani migrasi. Anda harus menyelesaikan semua operasi peningkatan, termasuk alih bencana migrasi, untuk kluster PolarDB sebelum Anda dapat melepas atau mengubah zona instans RDS tersebut.