2011-08-25 36 views
6

Tôi có thể tìm truy vấn chính xác từ id truy vấn mysql không?Tìm truy vấn từ query_id trong mysql

Đây là một phần của "HIỂN THỊ ENGINE InnoDB TÌNH TRẠNG" trong MySQL:

MySQL thread id 1106, query id 1360 localhost 127.0.0.1 test2 
---TRANSACTION 0 19491, not started, OS thread id 2960035840 

Có cách nào để tôi có thể tìm thấy các truy vấn với id 1360 là gì?

Trả lời

0

Chỉ cần thêm dòng này để my.cnf

log=/tmp/mysql_query.log 

dịch vụ mysql Sau đó khởi động lại (/etc/init.d/mysql stop/etc/init.d/mysql start)

Sau đó, đuôi file log. Dường như có một id truy vấn trong đó!

110825 15:07:49 36 Connect ***@localhost on *** 
... 
      36 Query SELECT * FROM genre g LIMIT 0,1000 
      36 Quit 

cũng Xem http://www.jeff-barr.com/?p=112http://dev.mysql.com/doc/refman/5.1/en/query-log.html

+0

cái nào trong số này là id truy vấn? –

+0

Tôi tin "36" là id truy vấn – bpgergo

+0

Tôi đã tìm ra đây là định dạng 'cat /tmp/mysql_query.log | egrep "^ \ s + ([0-9] +) Truy vấn \ s + CHỌN" 'Hy vọng rằng sẽ giúp – bpgergo

0

Bạn có thể sử dụng lệnh sau: HIỂN THỊ processlist;

Nó sẽ cung cấp cho bạn tất cả quy trình hiện đang chạy với ID truy vấn và truy vấn đang được thực thi.