Kami mencoba melakukan debugging kinerja server dan saya ingin menangkap snapshot dari kueri yang dijalankan di server MySQL kami selama beberapa menit.
Saya kenal dengan MySQL SHOW FULL PROCESSLIST
, namun saya ingin dapat menjalankan ini melalui baris perintah sehingga saya dapat membuangnya ke file dan memposting prosesnya.
Apakah ada cara untuk menampilkan kueri ini ke file dan menjalankannya setiap detik?
Apakah ada cara yang lebih baik untuk menangkap semua pertanyaan yang sedang dijalankan?
Perhatikan bahwa saya tidak tertarik hanya pada kueri lambat (Saya kenal dengan log kueri lambat).
echo show full processlist | mysql
atau lebih baik SELECT info FROM information_schema.processlist WHERE Command="Query" AND User!="root"
dalam satu loop dalam bash. Tambahkan beberapa baris dan Anda akan mendapatkan fungsionalitas permintaan yang sama dari innotop
atau pt-kill