Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Tips Upgrade Percona XtraDB Cluster ke 8.0

MySQL 8.0 telah tersedia untuk sementara waktu dan Percona XtraDB Cluster 8.0 juga telah tersedia untuk beberapa waktu juga. Selain itu, MySQL 5.6 akan memasuki Akhir Masa Pakainya dan orang-orang yang menggunakan PXC 5.6 juga ingin segera bermigrasi ke versi yang lebih baru. Mari kita lihat prosesnya dan bagikan beberapa tips seputarnya.

Ingat, ini MySQL Di Bawahnya...

Sebagai permulaan, Anda harus ingat bahwa Galera hanyalah sebuah plugin yang bekerja dengan MySQL sehingga Anda harus memastikan bahwa Anda mematuhi aturan dan proses migrasi untuk versi MySQL khusus Anda yang digunakan di PXC. Jika kami menjalankan PXC 5.7 dan Anda ingin meningkatkan ke PXC 8.0, Anda harus terlebih dahulu mencentang semua kotak pada daftar periksa pemutakhiran MySQL. Kami membahas beberapa di blog kami yang menjelaskan proses peningkatan antara MySQL 5.7 dan MySQL 8.0. Ini juga berarti bahwa hanya jalur pemutakhiran yang didukung oleh MySQL yang layak - misalnya, Anda tidak dapat memutakhirkan PXC 5.6 secara langsung ke PXC 8.0 karena pemutakhiran MySQL langsung dari 5.6 ke 8.0 tidak didukung.

Baca Dokumentasi Peningkatan

Seperti biasa, setiap kali Anda merencanakan peningkatan, Anda harus membiasakan diri dengan dokumentasi yang disiapkan oleh vendor. Percona memiliki halaman web yang didedikasikan untuk menjelaskan proses peningkatan dan peringatan di sekitarnya. Kami akan membahas beberapa poin tersebut di entri blog ini.

Perubahan Konfigurasi

Ada beberapa perubahan dalam pengaturan konfigurasi default yang dapat memicu masalah dalam proses peningkatan - pxc_strict_mode diatur ke ENFORCING secara default. Mode ini memblokir segala jenis konfigurasi yang eksperimental dan dapat memengaruhi stabilitas cluster. Pemeriksaan meliputi antara lain, mesin penyimpanan yang digunakan, format log biner, keberadaan kunci utama dan beberapa hal lainnya. Saat memutakhirkan, Anda mungkin ingin menyetelnya ke PERMISSIVE untuk melacak ketidakcocokan di log kesalahan, tetapi jika tidak, biarkan PXC berjalan bahkan jika beberapa hal tidak dalam kondisi terbaiknya.

Setelan lain, pxc_encrypt_cluster_traffic, juga diaktifkan secara default, menerapkan enkripsi komunikasi Galera antar node. Tidak mungkin untuk mencampur node dengan node terenkripsi dan tidak terenkripsi dalam cluster yang sama karena itu Anda harus mengaturnya di semua node atau memastikan Anda menonaktifkan pxc_encrypt_cluster_traffic pada node PXC 8.0 yang baru.

Ubah di Plugin Otentikasi Default

Kami menyebutkan ini di posting blog kami tentang migrasi ke MySQL 8.0, tetapi perubahannya sangat penting sehingga kami ingin mengulanginya di sini juga - dengan MySQL 8.0, plugin otentikasi default berubah menjadi caching_sha2_password - ini mungkin membuat beberapa aplikasi lama tidak kompatibel dengan MySQL 8.0. Tentu saja, Anda dapat mengubah setelan ini, tetapi jika Anda tidak mempertimbangkannya, setelan ini dapat menjadi bumerang setelah peningkatan versi selesai.

Proses Upgrade

Sebagai permulaan, harap diingat bahwa, meskipun tidak direkomendasikan, dengan beberapa node PXC 5.7 dan PXC 8.0 dapat berjalan di cluster yang sama. Ini membuka peluang untuk melakukan upgrade langsung di tempat. Prosesnya akan cukup sederhana - hentikan node PXC 5.7, tingkatkan ke PXC 8.0 dengan menginstal versi baru dan memulainya. Dalam proses direktori data akan ditingkatkan ke versi baru dan node PXC 8.0 baru harus dapat memulai dengan benar dan bergabung dengan cluster. Kemudian Anda melanjutkan dengan node satu per satu, memigrasikannya dari PXC 5.7 ke PXC 8.0. Harap diingat bahwa Anda harus menghindari SST karena direktori data dari node PXC 8.0 tidak dapat digunakan pada 5.7. Sebaliknya harus bekerja ok. Untuk mencegah terjadinya SST, pastikan ukuran gcache cukup besar untuk mengakomodasi penulisan dan memungkinkan IST terjadi. IST sendiri akan bekerja dengan baik.

Jika Anda memiliki lebih banyak node gratis, Anda selalu dapat melakukan upgrade dengan dua cluster pada versi utama yang berbeda yang berjalan secara paralel dan terhubung melalui replikasi asinkron. Yang penting, pendekatan seperti itu akan memungkinkan Anda menguji PXC 8.0 lebih teliti karena Anda akan menjalankannya untuk sementara waktu (pada dasarnya selama Anda membutuhkannya) dan Anda dapat menguji aplikasi Anda di cluster ini - kapan saja di kali Anda dapat memindahkan beberapa beban kerja baca-saja ke PXC 8.0 melihat bagaimana kueri ditangani, jika ada kesalahan atau masalah kinerja.

Jika Anda menggunakan ClusterControl, ini dapat dilakukan dengan menggunakan tugas “Buat Cluster Budak”.

Anda akan diminta untuk memutuskan dari mana data awal harus berasal, master Node PXC atau dari cadangan.

Anda juga harus memberikan detail konektivitas seperti pengguna SSH dan jalur kunci .

Kemudian Anda akan diminta untuk memilih vendor dan versi - Anda mungkin ingin untuk menggunakan PXC 5.7 untuk saat ini, Anda akan memutakhirkan node nanti, menguji proses pemutakhiran itu sendiri.

Terakhir, Anda harus meneruskan nama host node atau alamat IP untuk ClusterControl ke sambungkan ke dan mulai atur node.

Sebagai hasilnya, Anda akan memiliki Percona XtraDB Cluster kedua yang berjalan di versi 5.7 , mereplikasi dari cluster asli. Cluster itu dapat ditingkatkan ke versi baru dan, pada akhirnya, Anda dapat mengalihkan lalu lintas ke sana. Kami telah menjelaskan proses ini secara rinci dalam posting blog kami sebelumnya.

Kami berharap posting blog singkat ini akan membantu Anda mempersiapkan diri untuk meningkatkan Cluster Percona XtraDB Anda ke versi 8.0.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Bagaimana NOT LIKE Bekerja di MySQL

  2. Temukan dan ganti seluruh database mysql

  3. Bagaimana cara memulai aplikasi spring-boot tanpa bergantung pada Database?

  4. Ubah skema MySQL ke Github Wiki?

  5. TAMPAK DROP MySQL