Dalam nomor versi Aurora MySQL seperti 2.08.1, 2 mewakili versi besar. Aurora MySQL versi 1 kompatibel dengan MySQL 5.6. Aurora MySQL versi 2 kompatibel dengan MySQL 5.7. Aurora MySQL versi 3 kompatibel dengan MySQL 8.0.23. Show
Meningkatkan antar versi besar memerlukan perencanaan dan pengujian yang lebih ekstensif daripada versi kecil. Prosesnya bisa memakan waktu yang cukup lama. Setelah peningkatan selesai, Anda mungkin juga memiliki pekerjaan lanjutan yang harus dilakukan. Misalnya, ini mungkin terjadi karena perbedaan kompatibilitas SQL, cara kerja fitur terkait MySQL tertentu, atau pengaturan parameter antara versi lama dan baru. Topik
Meningkatkan dari Aurora MySQL 2.x ke 3.xSaat ini, memutakhirkan ke Aurora MySQL versi 3 memerlukan pemulihan snapshot cluster Aurora MySQL versi 2 untuk membuat klaster versi 3 baru. Jika klaster asli Anda menjalankan Aurora MySQL versi 1, pertama-tama Anda meng-upgrade ke versi 2 dan kemudian menggunakan teknik pemulihan snapshot untuk membuat klaster versi 3. Untuk informasi umum tentang Aurora MySQL versi 3 dan fitur baru yang dapat Anda gunakan setelah Anda meng-upgrade, lihatAurora MySQL versi 3 kompatibel dengan MySQL 8.0. Untuk detail dan contoh melakukan upgrade jenis ini, lihatPerencanaan upgrade untuk Aurora MySQL versi 3danUpgrade ke Aurora MySQL versi 3. Ketika Anda meng-upgrade versi utama klaster Anda dari 2.x ke 3.x, klaster asli dan
yang ditingkatkan keduanya menggunakan yang sama Upgrade dari Aurora MySQL 1.x ke 2.x Meningkatkan versi besar dari 1.x ke 2.x mengubah Jika Anda memiliki klaster yang kompatibel dengan MySQL 5.6 dan ingin memutakhirkannya ke klaster yang kompatibel dengan MySQL-5.7, Anda dapat melakukannya dengan menjalankan proses pemutakhiran pada klaster itu sendiri. Peningkatan semacam ini adalah peningkatan di tempat, berbeda dengan peningkatan yang Anda lakukan dengan membuat klaster baru. Teknik ini membuat titik akhir yang sama dan karakteristik lain dari klaster. Peningkatan relatif cepat karena tidak memerlukan penyalinan semua data Anda ke volume klaster baru. Stabilitas ini membantu untuk meminimalkan perubahan konfigurasi dalam aplikasi Anda. Hal ini juga membantu untuk mengurangi jumlah pengujian untuk klaster yang ditingkatkan, karena jumlah instans DB dan kelas instans mereka semua tetap sama. Mekanisme peningkatan di tempat melibatkan mematikan klaster DB Anda saat operasi berlangsung. Aurora melakukan shutdown bersih dan menyelesaikan operasi luar biasa seperti rollback transaksi dan penghapusan pembersihan. Peningkatan di tempat ini mudah, karena mudah dilakukan dan meminimalkan perubahan konfigurasi pada aplikasi terkait. Sebagai contoh, peningkatan di tempat mempertahankan endpoint dan mengatur instans DB untuk klaster Anda. Namun, waktu yang diperlukan untuk peningkatan di tempat dapat bervariasi tergantung pada properti skema Anda dan seberapa sibuk klaster. Jadi, tergantung pada kebutuhan klaster Anda, Anda dapat memilih antara peningkatan di tempat, pemulihan snapshot seperti yang dijelaskan dalam Memulihkan dari snapshot klaster DB, atau teknik peningkatan lainnya seperti yang dijelaskan dalam Teknik peningkatan biru-hijau alternatif. Jika klaster Anda menjalankan versi yang lebih rendah dari 1.22.3, peningkatan mungkin memerlukan waktu lebih lama karena Aurora MySQL secara otomatis melakukan peningkatan ke 1.22.3 sebagai langkah pertama. Untuk meminimalkan downtime selama peningkatan versi besar, Anda dapat melakukan peningkatan versi kecil awal ke Aurora MySQL 1.22.3 terlebih dahulu. Merencanakan peningkatan versi besar untuk klaster Aurora MySQLUntuk memastikan aplikasi dan prosedur administrasi Anda berjalan dengan lancar setelah meningkatkan klaster di antara versi besar, Anda dapat melakukan beberapa perencanaan dan persiapan sebelumnya. Untuk melihat jenis kode manajemen yang akan diperbarui untuk skrip AWS CLI atau Aplikasi berbasis API RDS, lihat Bagaimana peningkatan di tempat memengaruhi grup parameter untuk klaster dan Perubahan pada properti klaster antara Aurora MySQL versi 1 dan 2. Anda dapat mempelajari jenis masalah yang mungkin Anda alami selama peningkatan dengan membaca Pemecahan masalah untuk peningkatan di tempat Aurora MySQL. Untuk masalah yang mungkin menyebabkan peningkatan memakan waktu lama, Anda dapat menguji kondisi tersebut terlebih dahulu dan memperbaikinya. Untuk memverifikasi kompatibilitas aplikasi, kinerja, prosedur pemeliharaan, dan pertimbangan serupa untuk klaster yang ditingkatkan, Anda dapat melakukan simulasi peningkatan sebelum melakukan peningkatan yang sebenarnya. Teknik ini dapat sangat berguna untuk klaster produksi. Di sini, penting untuk meminimalkan downtime dan menyiapkan klaster yang telah ditingkatkan agar siap digunakan segera setelah peningkatan selesai. Teknik ini berlaku untuk upgrade dari Aurora MySQL versi 1 ke versi 2. Saat ini, Anda tidak dapat meng-upgrade dari Aurora MySQL versi 2 ke 3 dengan menggunakan kloning. Gunakan langkah-langkah berikut:
Jalur peningkatan versi besar Aurora MySQLTidak semua jenis atau versi klaster Aurora MySQL dapat menggunakan mekanisme peningkatan di tempat. Anda dapat mempelajari jalur peningkatan yang sesuai untuk setiap klaster Aurora MySQL dengan melihat tabel berikut.
Cara kerja peningkatan versi besar Aurora MySQL di tempatAurora MySQL melakukan peningkatan versi besar sebagai proses multitahap. Anda dapat memeriksa status peningkatan saat ini. Beberapa langkah peningkatan juga memberikan informasi kemajuan. Sebagai setiap tahap dimulai, Aurora MySQL mencatat sebuah peristiwa. Anda dapat memeriksa peristiwa yang terjadi di halaman Peristiwa di konsol RDS. Untuk informasi lebih lanjut tentang bekerja dengan peristiwa, lihat Bekerja dengan pemberitahuan kejadian Amazon RDS. Setelah proses dimulai, ini berjalan sampai peningkatan berhasil atau gagal. Anda tidak dapat membatalkan peningkatan saat sedang berlangsung. Jika peningkatan gagal, Aurora mengembalikan semua perubahan dan klaster Anda memiliki versi mesin, metadata, dan seterusnya yang sama seperti sebelumnya. Proses peningkatan terdiri dari tiga tahap:
Cara melakukan peningkatan di tempatUntuk meningkatkan versi besar dari klaster DB Aurora MySQL
Untuk meningkatkan versi besar klaster DB Aurora MySQL, gunakan klaster DB Aurora MySQL, gunakanAWS CLI modify-db-clusterperintah dengan parameter wajib berikut:
Jika klaster Anda menggunakan grup parameter kustom, sertakan juga salah satu atau kedua opsi berikut ini:
Contoh berikut meningkatkan klaster DB contoh Untuk Linux, macOS, atau Unix:
Untuk Windows:
Anda dapat menggabungkan perintah CLI lainnya dengan Untuk meningkatkan versi besar dari klaster DB Aurora MySQL, gunakan perintah ModifyDBCluster API RDS dengan parameter wajib berikut:
Bagaimana peningkatan di tempat memengaruhi grup parameter untuk klasterGrup parameter Aurora memiliki kumpulan pengaturan konfigurasi yang berbeda untuk klaster yang kompatibel dengan MySQL 5.6 atau 5.7. Saat Anda melakukan peningkatan di tempat, klaster yang ditingkatkan dan semua instansnya harus menggunakan kluster yang kompatibel dengan 5.7 dan grup parameter instans. Jika klaster dan instans Anda menggunakan grup parameter default yang kompatibel dengan 5.6, klaster dan instans yang ditingkatkan akan dimulai dengan grup parameter default yang kompatibel dengan 5.7. Jika klaster dan instans Anda menggunakan grup parameter khusus apa pun, Anda harus membuat grup parameter yang kompatibel dengan 5.7 dan menentukannya selama proses peningkatan. Jika klaster asli Anda menggunakan grup parameter cluster kustom yang kompatibel dengan 5.6, buat grup parameter klaster yang kompatibel dengan 5.7. Anda mengaitkan grup parameter tersebut dengan klaster sebagai bagian dari proses peningkatan. Demikian pula, buat grup parameter DB yang kompatibel dengan 5.7. Anda mengaitkan grup parameter tersebut dengan semua instans DB di kluster sebagai bagian dari proses peningkatan. Jika Anda menentukan grup parameter khusus apa pun selama proses peningkatan, Anda harus me-reboot klaster secara manual setelah pemutakhiran selesai. Melakukan hal itu membuat klaster mulai menggunakan pengaturan parameter kustom Anda. Perubahan pada properti klaster antara Aurora MySQL versi 1 dan 2 Untuk klaster yang kompatibel dengan MySQL 5.6, nilai yang Anda gunakan untuk parameter Juga, ubah kode Anda yang memanipulasi grup parameter untuk memperhitungkan fakta bahwa nama grup parameter default berbeda untuk klaster yang kompatibel dengan MySQL 5.6, 5.7, dan 8.0. Nama grup parameter default untuk klaster Aurora MySQL versi 1 adalah
Misalnya, Anda mungkin memiliki kode seperti berikut yang berlaku untuk klaster Anda sebelum peningkatan.
Setelah meningkatkan versi utama klaster, ubah kode tersebut sebagai berikut.
Peningkatan besar untuk basis data globalUntuk basis Aurora global, Anda meningkatkan klaster basis data global. Aurora secara otomatis meningkatkan semua cluster pada saat yang sama dan memastikan bahwa mereka semua menjalankan versi mesin yang sama. Persyaratan ini karena setiap perubahan pada tabel sistem, format file data, dan sebagainya, secara otomatis direplikasi ke semua klaster sekunder. Ikuti instruksi di Cara kerja peningkatan versi besar Aurora MySQL di tempat. Saat Anda menentukan apa yang akan diupgrade, pastikan untuk memilih klaster database global, bukan salah satu klaster yang dikandungnya. Jika Anda menggunakanAWS Management Console, pilih item dengan peranBasis data global.
Jika Anda menggunakan AWS CLI atau RDS API, mulai proses peningkatan dengan memanggil perintah modify-global-cluster atau operasi ModifyGlobalCluster alih-alih Anda tidak dapat menentukan grup parameter khusus untuk klaster database global saat Anda melakukan peningkatan versi utama dari database global Aurora tersebut. Buat grup parameter kustom Anda di setiap Wilayah klaster global dan kemudian terapkan secara manual ke klaster Regional setelah upgrade. Setelah peningkatanJika klaster yang Anda tingkatkan memiliki fitur backtrack diaktifkan, Anda tidak dapat melacak klaster yang ditingkatkan versinya ke waktu sebelum peningkatan. Pemecahan masalah untuk peningkatan di tempat Aurora MySQLGunakan tips berikut untuk membantu memecahkan masalah dengan peningkatan di tempat Aurora MySQL. Kiat-kiat ini tidak berlaku untukAurora ServerlessPanel DB.
Anda dapat menggunakan langkah-langkah berikut untuk melakukan pemeriksaan Anda sendiri untuk beberapa kondisi di tabel sebelumnya. Dengan begitu, Anda dapat menjadwalkan peningkatan pada saat Anda mengetahui database dalam keadaan di mana peningkatan dapat diselesaikan dengan sukses dan cepat.
Tutorial peningkatan di tempat Aurora MySQLContoh Linux berikut menunjukkan bagaimana Anda dapat melakukan langkah-langkah umum prosedur peningkatan di tempat menggunakan AWS CLI. Contoh pertama ini membuat klaster Aurora DB yang menjalankan Aurora MySQL versi 1.x. Klaster ini mencakup instans DB penulis dan instans DB pembaca. Klaster
Aurora MySQL 2.x versi yang dapat Anda
tingkatkan untuk klaster bergantung pada versi 1.x klaster yang sedang berjalan dan di Wilayah AWS tempat klaster berada. Perintah pertama, dengan
Contoh ini menunjukkan bagaimana
jika Anda memasukkan nomor versi target yang bukan merupakan target peningkatan yang valid untuk klaster, Aurora tidak akan melakukan peningkatan. Aurora juga tidak akan melakukan peningkatan versi besar kecuali Anda menyertakan parameter
Dibutuhkan beberapa saat untuk status klaster dan instans DB terkait
untuk diubah menjadi
Pada poin ini, nomor versi untuk klaster cocok dengan yang ditentukan untuk peningkatan.
Contoh sebelumnya melakukan peningkatan langsung dengan menentukan parameter Contoh berikut meningkatkan klaster yang awalnya menjalankan Aurora MySQL versi 1.22.2. Di output
Ketika sebuah klaster dibuat tanpa jendela pemeliharaan tertentu, Aurora mengambil hari acak dalam seminggu. Dalam hal ini, perintah
Contoh berikut menunjukkan cara mendapatkan laporan dari peristiwa yang
dihasilkan oleh peningkatan. Argumen
Teknik peningkatan biru-hijau alternatifUntuk situasi di mana prioritas utama adalah untuk melakukan peralihan langsung dari klaster lama ke klaster yang ditingkatkan, Anda dapat menggunakan proses multilangkah yang menjalankan klaster lama dan baru side-by-side. Dalam hal ini, Anda mereplikasi data dari klaster lama ke klaster baru hingga Anda siap untuk mengambil alih klaster baru. Untuk detailnya, lihat posting blog ini: Melakukan peningkatan versi besar untuk Amazon Aurora MySQL dengan downtime minimum. |