Aktivasi Slow Query Log di MySQL

  1. Cek dulu apakah slow query log sudah aktif atau belum. Login ke mysql console, ketik command
show variables like '%SLOW%';
Cek Status Slow Query

Cek Status Slow Query

  1. Karena belum aktif, kita aktifkan dulu logging slow query. Ada 2 cara, bisa lewat mysql console atau di config melalui my.cnf. Saya pribadi lebih memilih config melalui my.cnf karena lebih mudah kalau nanti ingin dinonaktifkan. Caranya, masuk ke file my.cnf (bisa /etc/my.cnf atau /etc/mysql/my.cnf) tambahkan
#enable slow query
slow_query_log=1
#set file location
#if you satisfy with default location (check picture above), then dont use this
slow_query_log_file= /var/lib/mysql/db-master1-slow.log

Jangan lupa reload service mysql

service mysql reload

Silahkan cek file log slow query nya, kalau di berdasarkan gambar di atas ada di /var/lib/mysql/db-master1-slow.log


Instal Percona Toolkit (Slow Query Analyzer)

  1. Berikutnya install percona-toolkit
sudo apt-get update
sudo apt-get install -y wget gnupg2 curl lsb-release
wget https://repo.percona.com/apt/percona-release_latest.generic_all.deb
sudo dpkg -i percona-release_latest.generic_all.deb
sudo apt-get update
sudo percona-release #aktifkan percona repo
sudo apt-get install percona-toolkit #install percona toolkit, termasuk didalamnya pt-query-digest
  1. Untuk analisa slow query, kita akan gunakan salah satu tool dari Percona Toolkit yaitu pt-query-digest .
pt-query-digest --limit=100% db-master1-slow.log > report.out
Query nya di Urut Berdasarkan yang Paling Lambat

Query nya di Urut Berdasarkan yang Paling Lambat

Referensi:Mariadb - Slow query log overview Percona - Percona toolkit installation