1、開啟慢查詢
綏德網(wǎng)站制作公司哪家好,找成都創(chuàng)新互聯(lián)公司!從網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、APP開發(fā)、成都響應(yīng)式網(wǎng)站建設(shè)公司等網(wǎng)站項(xiàng)目制作,到程序開發(fā),運(yùn)營維護(hù)。成都創(chuàng)新互聯(lián)公司于2013年創(chuàng)立到現(xiàn)在10年的時(shí)間,我們擁有了豐富的建站經(jīng)驗(yàn)和運(yùn)維經(jīng)驗(yàn),來保證我們的工作的順利進(jìn)行。專注于網(wǎng)站建設(shè)就選成都創(chuàng)新互聯(lián)公司。
找到 MySQL 的配置文件 ,my.cnf (Windows 為 my.ini ),在 MySQL 下增加下面幾行:
long_query_time=2
log-slow-queries= /usr/var/slowquery.log
上面的 2 是查詢的時(shí)間,即當(dāng)一條 SQL 執(zhí)行時(shí)間超過2秒的時(shí)候才記錄,/usr/var/slowquery.log 是日志記錄的位置。
然后重新啟動(dòng)MySQL服務(wù)
2、 MySQL 配置文件的位置
Windows:Windows 的配置文件為 my.ini,一般在 MySQL 的安裝目錄下或者 c:\Windows 下。
Linux:Linux 的配置文件為 my.cnf ,一般在 /etc 下。
查了一下資料,My SQL可以用下面方法跟蹤sql 語句,以下方法以Windows平臺(tái)為例,linux雷同: 1 配置my.ini文件(在安裝目錄,linux下文件名為my.cnf 查找到[mysqld]區(qū)段,增加日志的配置,如下示例:[mysqld]log="C:/temp/mysql.log" log_slow_queries="C:/temp/mysql_slow.log" long_query_time=1 log指示日志文件存放目錄; log_slow_queries指示記錄執(zhí)行時(shí)間長的sql日志目錄; long_query_time指示多長時(shí)間算是執(zhí)行時(shí)間長,單位s。 Linux下這些配置項(xiàng)應(yīng)該已經(jīng)存在,只是被注釋掉了,可以去掉注釋。但直接添加配置項(xiàng)也OK啦。 2 重新啟動(dòng)mysql服務(wù)。注意事項(xiàng):A日志存放目錄必須提前存在,否則不能記錄日志。這里也局勢(shì)C:/temp目錄必須已經(jīng)存在 B 日志文件是linux格式的文本,建議用ultraEdit打開,轉(zhuǎn)換為dos格式查看(否則沒有換行,看不懂的) C 服務(wù)在啟動(dòng)狀態(tài)下不能刪除日志文件,否則就無法記錄sql語句了。 D 不能用ultraEdit直接清除文件內(nèi)容后保存,否則也記錄不下來了。需要重啟服務(wù),如果ultraEdit保存了.bak,后記錄到此文件中。 E 可以用notepad清除文本后保存,可以繼續(xù)記錄日志。(怪怪的,也不建議用)
這是一個(gè)慢查詢?nèi)罩镜恼故竟ぞ?,能夠幫?DBA 或者開發(fā)人員分析數(shù)據(jù)庫的性能問題,給出全面的數(shù)據(jù)擺脫直接查看 slow-log。QAN(Query Analytics)
PMM 目前有 2 個(gè)版本,但是對(duì)于 QAN 來說其大致由三部分組成:
QAN-Agent(client):負(fù)責(zé)采集 slow-log 的數(shù)據(jù)并上報(bào)到服務(wù)端
QAN-API(server):負(fù)責(zé)存儲(chǔ)采集的數(shù)據(jù),并對(duì)外提供查詢接口
QAN-APP:專門用來展示慢查詢數(shù)據(jù)的 grafana 第三方插件
1. 數(shù)據(jù)流轉(zhuǎn)
slow-log -- QAN-Agent -- QAN-API -- QAN-APP(grafana)
2. pmm1 架構(gòu)圖
3. pmm2 架構(gòu)圖
mysql的bin日志要用mysqlbinlog命令來查看,假如你的bin日志是mysql-bin.000001,那么你可以如下操作:mysqlbinlogmysql-bin.000001|less