Chúng tôi đang cố gắng thực hiện một số gỡ lỗi hiệu suất máy chủ và tôi muốn chụp một ảnh chụp nhanh các truy vấn đang chạy trên máy chủ MySQL của chúng tôi trong một vài phút.
Tôi quen thuộc với MySQL SHOW FULL PROCESSLIST
, tuy nhiên tôi muốn có thể chạy nó thông qua dòng lệnh để tôi có thể chuyển nó vào một tệp và xử lý nó.
Có cách nào để xuất truy vấn này vào một tệp và để nó chạy mỗi giây hay không?
Có cách nào tốt hơn để nắm bắt tất cả các truy vấn đang được chạy không?
Lưu ý rằng tôi không quan tâm đến chỉ các truy vấn chậm (Tôi quen thuộc với nhật ký truy vấn chậm).
echo show full processlist | mysql
hoặc tốt hơn SELECT info FROM information_schema.processlist WHERE Command="Query" AND User!="root"
trong một vòng lặp trong bash. Thêm một vài dòng và bạn sẽ nhận được các chức năng truy vấn cùng hơn innotop
hoặc pt-kill