Cara mengaktifkan fitur slow query log di MySQL 5.7 dan MySQL 5.6


Jika anda bekerja menggunakan aplikasi berbasis MySQL atau sedang membangun aplikasi yang menggunakan database MySQL, saya sarankan pada anda untuk mengaktifkan fitur ini. 

Fitur ini berfungsi untuk melihat seberapa lama response query yang aplikasi lakukan untuk memproses database MySQL. Fitur ini akan mencatat query yang melewati batas waktu yang telah ditentukan (pada konfigurasi) yang menurut system, query tersebut memakan waktu lama untuk diproses. 

Berdasarkan pencatatan tersebut, kita bisa tahu apakah MySQL server kita perlu di tune up secara hardware, konfigurasi atau memang struktur database atau query kita perlu diubah.

Bagaimana cara mengaktfkannya? Berikut langkah-langkahnya:

Saya mencoba konfigurasi ini di server MySQL 5.6 dan MySQL 5.7 yang berjalan di atas sistem operasi Ubuntu Server 16.04 LTS.

Untuk memulai konfigurasi saya membuka file mysqld.cnf dengan menjalankan perintah:

 sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf

kemudian saya menambahkan konfigurasi di bawah ini:

 #mengaktifkan fitur sloq query log
 slow_query_log = 1
 #lokasi pencatatan query yang dianggal "slow"
 slow_query_log_file = /var/log/mysql/slow-queries.log
 #batas waktu query yang prosesnya melebihi 1 detik akan dicatat di log
 long_query_time = 1

setelah itu simpan dan saya merestart service MySQL server dengan perintah:

 sudo service mysql restart

lalu untuk memantau hasil querysaya tinggal menjalankan perintah:

  sudo tail -f /var/log/mysql/slow-queries.log

maka query-query yang prosesnya melebihi batas waktu yang telah ditentukan akan dicatat berikut berapa lama waktu yang dibutuhkan untuk memproses query tersebut. Selamat mencoba dan terima kasih telah berkunjung :-)

Comments