Hi Kawan,
kali ini saya bagi-bagi trik, jadi kasusnya adalah, database server sering down, entah karena banyak user yang konek atau apa, ternyata setelah di cek akibat adanya SLEEP CONNECTION pada mysql menyebabkan server database idle dan down. Dapat dicek seperti kasus gambar saya, cuman ini tidak seberapa, yang aslinya di server lebih parah karena banyak idle connection.
Kill idle sleep connection tidak berpengaruh kepada client mysql karena posisinya sleep dan tidak menunggu apa-apa. Jadi pada my.inf atau my.cnf dapat di tambahkan variabel
wait_timeout =30
dari asalnya nilai 28800, jika dibagi 60 menjadi 480 menit, dibagi menjadi 60 lagi menjadi 8 jam, jadi idle selama 8 jam, cukup panjang untuk release memory pada database server. Jadi rubah saja menjadi 30 yakni setengah menit, atau 30 detik untuk mempercepat release connection supaya tidak menumpuk pada pool database Mysql.
Dapat juga menambahkan rumus pada my.ini atau my.cnf menjadi :
wait_timeout = 60
interactive_timeout = 100
connect_timeout = 10
Untuk cek process dapat menggunakan perintah :
SHOW FULL PROCESSLIST;
Untuk membuat query dapat menggunakan :
SELECT CONCAT(‘KILL ‘,id,’;’) FROM information_schema.processlist WHERE command=’sleep’;
maka akan menghasilkan tabel untuk di kopi ke notepad untuk dijadikan script mysql.
Ok sekian, semoga membantu.