查看mysql的語(yǔ)句,比較常用的大概是show processlist 命令了,但是這個(gè)對(duì)于查詢時(shí)間比較長(zhǎng)的語(yǔ)句比較有意義,對(duì)于一下子就能執(zhí)行的語(yǔ)句真心拼不過(guò)手速啊.
于是就只能從mysql的歷史記錄里面著手了.為了實(shí)現(xiàn)這個(gè)目的,我們需要修改/etc/my.cnf文件.
在my.cnf中的[mysqld](其他地方可能無(wú)效)下插入log=/etc/tmp/mysql.log(日志的地址可以自己定義,不過(guò)不要在home里面,否則可能顯示不出來(lái),主要要有寫的權(quán)限).然后要重啟數(shù)據(jù)庫(kù),用service mysqld restart命令就可以了.這個(gè)log會(huì)將所有的執(zhí)行語(yǔ)句記錄下來(lái),所以在數(shù)據(jù)庫(kù)很忙的時(shí)候,這個(gè)日志可能變得很大,不宜查看.
用tail -f /etc/tmp/mysql.log 命令可以持續(xù)觀察執(zhí)行語(yǔ)句,也可以將該文件下載下來(lái)慢慢看.
=========================================
另外還有一個(gè)慢查詢歷史記錄,也在my.cnf文件里,配置語(yǔ)句為
?1234 log-slow-queries=/var/lib/mysql/slowquery.log long_query_time=5 log-queries-not-using-indexes
其中l(wèi)og-slow-queries是慢查詢歷史記錄的地址,long_query_time限定超過(guò)X秒才能加入到歷史記錄里面,log-queries-not-using-indexes限定沒(méi)有使用索引的查詢語(yǔ)句.
這個(gè)日志由于記錄語(yǔ)句不多,所以可以長(zhǎng)期開啟.
更多信息請(qǐng)查看IT技術(shù)專欄