1. 程式人生 > >mysql開啟日誌、查看歷史語句

mysql開啟日誌、查看歷史語句

mysql開啟 數據 log ont stat itl ice div top

mysql查看歷史執行的sql

查看mysql的語句,比較常用的大概是show processlist 命令了,但是這個對於查詢時間比較長的語句比較有意義,對於一下子就能執行的語句真心拼不過手速啊.

於是就只能從mysql的歷史記錄裏面著手了.為了實現這個目的,我們需要修改/etc/my.cnf文件.

在my.cnf中的[mysqld](其他地方可能無效)下插入log=/etc/tmp/mysql.log(日誌的地址可以自己定義,不過不要在home裏面,否則可能顯示不出來,主要要有寫的權限).然後要重啟數據庫,用service mysqld restart命令就可以了.這個log會將所有的執行語句記錄下來,所以在數據庫很忙的時候,這個日誌可能變得很大,不宜查看.

用tail -f /etc/tmp/mysql.log 命令可以持續觀察執行語句,也可以將該文件下載下來慢慢看.

=========================================

另外還有一個慢查詢歷史記錄,也在my.cnf文件裏,配置語句為

?1234 log-slow-queries=/var/lib/mysql/slowquery.log long_query_time=5 log-queries-not-using-indexes

其中log-slow-queries是慢查詢歷史記錄的地址,long_query_time限定超過X秒才能加入到歷史記錄裏面,log-queries-not-using-indexes限定沒有使用索引的查詢語句.

這個日誌由於記錄語句不多,所以可以長期開啟.

mysql開啟日誌、查看歷史語句