開啟php慢查詢日誌:
1 $ sudo vi /usr/loal/php/etc/php-fpm.conf2 ; default value: 0
3 request_slowlog_timeout =1s
4 ; the log file for
slow requests
5 ; default value: /usr/local/php/log/php-fpm.log.slow
6 slowlog = /usr/local/php/log/php-fpm.log.slow
預設的 request_slowlog_timeout 是0,php的慢指令碼日誌是關閉的,因此設定為大於0的n,表示執行時間超過n的指令碼將記錄進入slowlog裡。
然後監測到**存在問題的時候檢視下slowlog即可發現慢指令碼,對指令碼進行檢查處理即可。
mysql慢查詢日誌對於跟蹤有問題的查詢非常有用,可以分析出當前程式裡有很耗費資源的sql語句,那如何開啟mysql的慢查詢日誌記錄呢?
其實開啟mysql的慢查詢日誌很簡單,只需要在mysql的配置檔案裡(windows系統是my.ini,linux系統是my.cnf)的[mysqld]下面加上如下**:
1 log-slow-queries=/var/lib/mysql/slowquery.log2 long_query_time=2
long_query_time=2中的2表示查詢超過兩秒才記錄.
如果日誌內容很多,用眼睛一條一條去看會累死,mysql自帶了分析的工具,使用方法如下:
1 $ cd /usr/local/mysql/bin2$ mysqldumpslow –help
3 -s,是order的順序,主要有c,t,l,r和ac,at,al,ar,分別是按照query次數,時間,lock的時間和返回的記錄數來排序,前面加了a的時倒敘
4 -t,是top n的意思,即為返回前面多少條的資料
5 -g,後邊可以寫乙個正則匹配模式,大小寫不敏感的
6 $ mysqldumpslow -s c -t 20 host-slow.log #訪問次數最多的20個sql語句
7 $ mysqldumpslow -s r -t 20 host-slow.log #返回記錄集最多的20個sql
8 $ mysqldumpslow -t 10 -s t -g 「left join」 host-slow.log #按照時間返回前10條裡面含有左連線的sql語句
mysql慢查詢日誌查詢手冊
PHP慢指令碼日誌和Mysql的慢查詢日誌
1 php慢指令碼日誌 間歇性的502,是後端 php fpm 不可用造成的,間歇性的502一般認為是由於 php fpm 程序重啟造成的。在 php fpm 的子程序數目超過的配置中的數量時候,會出現間歇性的502錯誤,如果在配置中設定了max requests的話,超過數量也會出現502錯誤,而...
mysql 慢日誌 MYSQL慢查詢和日誌
一 簡介 開啟慢查詢日誌,可以讓mysql記錄下查詢超過指定時間的語句,通過定位分析效能的瓶頸,才能更好的優化資料庫系統的效能。二 引數說明 slow query log 慢查詢開啟狀態 slow query log file 慢查詢日誌存放的位置 這個目錄需要mysql的執行帳號的可寫許可權,一般...
Mysql 慢查詢和慢查詢日誌分析
眾所周知,大訪問量的情況下,可新增節點或改變架構可有效的緩解資料庫壓力,不過一切的原點,都是從單台mysql開始的。下面總結一些使用過或者研究過的經驗,從配置以及調節索引的方面入手,對mysql進行一些優化。第一步應該做的就是排查問題,找出瓶頸,所以,先從日誌入手 開啟慢查詢日誌 mysql sho...