GNU/Linux >> Belajar Linux >  >> Linux

Tingkatkan caching Database MySQL

Peringatan

Karena masalah dengan skala dan kasus sudut lainnya, cache kueri MySQL / Mariadb tidak lagi direkomendasikan. Kami sangat menyarankan untuk memastikan caching ditangani di aplikasi sebagai gantinya.

Ikhtisar

Di sebagian besar sistem Linux, instans database MySQL yang diinstal secara default sering dikonfigurasi ke berbagai parameter yang aman untuk memastikan operasi yang stabil. Pengaturan caching kueri biasanya tidak diaktifkan atau disetel dengan sangat konservatif. Sebagai hasil dari konservatisme ini, akses database menggunakan sedikit memori sistem untuk menyimpan pertanyaan berulang. Dengan mengaktifkan cache dan menyesuaikannya dengan kebutuhan aplikasi, peningkatan dapat terlihat jelas di sebagian besar aplikasi terutama Magento eCommerce Stores.

Untuk pengujian awal, ukuran cache 32M diputuskan sebagai titik awal. Sebelum perubahan apa pun, parameter cache database terletak di /etc/my.cnf dikonfigurasi sebagai:

query_cache_limit 1M
query_cache_size  0
query_cache_type  ON

Mengubah parameter

Untuk membuat perubahan apa pun, file /etc/my.cnf telah diedit untuk menyertakan parameter berikut dan database dimulai ulang. Setelah perubahan database melaporkan sebagai berikut:

query_cache_limit 2M
query_cache_size  32M
query_cache_type  ON

Pengujian

Untuk menguji perubahan kami, kami awalnya menginstal toko eCommerce Magento dengan database produk demo default diinstal. Kami mengatur waktu pengambilan setiap produk menggunakan pengepungan. Dengan meningkatkan ukuran cache pada database, 200 md selanjutnya mengurangi waktu respons situs. Perubahan sederhana ini akan menunjukkan bahwa mungkin ada lebih banyak ruang untuk perbaikan dalam parameter dan tata letak sub-sistem basis data untuk mengoptimalkannya secara khusus untuk penggunaan Magento, perhatikan bahwa pengoptimalan untuk Magento bisa menjadi tugas yang rumit!

Jebakan!

Skrip MySQLTuner yang populer (seperti yang dirinci dalam panduan Penyesuaian dan Pengoptimalan Kinerja MySQL kami) dijalankan dan menunjukkan bahwa mengubah jumlah utas akan bermanfaat, namun perubahan ini mengakibatkan kinerja turun dengan 290 md!

Kesimpulan

Di luar kotak, konfigurasi database MySQL bagus tetapi bisa jauh lebih baik. Meningkatkan cache memberikan respons yang menguntungkan secara instan. Selain peningkatan kinerja database, ada juga berbagai teknologi cache seperti Memecached dan Redis yang akan meningkatkan kinerja dengan menyimpan data yang sering direferensikan.


Linux
  1. Dasar-dasar pengguna dan basis data MySQL

  2. Ganti nama basis data MySQL

  3. Basis data MySql dari stik usb

  1. FAQ Penerapan MySQL

  2. Cadangan Basis Data MySQL Berskrip

  3. Cara Membuat Database di MySQL dengan MySQL Workbench

  1. Optimalkan database MySQL

  2. Cara menyalin database MySQL

  3. Terhubung ke database MySQL dari jarak jauh