背景:由於線上環境的資料庫很慢,而慢查詢的日誌兩個禮拜下來就兩個多g,通過pt工具分析很耗時;同時為更過的檢視單獨某一天的慢查詢的sql,快速分析sql語句,將慢查詢日誌進行分割。
cat /u01/cut_slowsql.sh
#!/bin/bash
#split mysql slow-query-log#######
logdir=
"/u01/mysql_3306/data/mysqllog"
datadir=
"/u01/mysql_3306/data"
date=
`date +"%y-%m-%d"
`user=
"root"
passwd=
"isiteam"
cmd=
"/usr/bin/mysql"
socket=
"/tmp/mysql_3306.sock"
cd$datadir
#stop slow_query_log
$ -u$ -p$ -s $ -e "set global slow_query_log=0"
#reset the filename of slow_query_log
cp -rf isi-10-141-slow.log $/isi-10-141-slow_$.log
cat /dev/null > isi-10-141-slow.log
#enable slow_query_log
$ -u$ -p$ -s $ -e "set global slow_query_log=1"
建立定時任務
echo
"00 00 * * * /u01/cut_slowsql.sh"
>> /var/spool/cron/root
mysql資料庫開啟慢查詢日誌
修改配置檔案 在配置檔案my.ini中加上下面兩句話 1 log slow queries c xampp mysql slow query.log 2 long query time 3 第一句使用來定義慢查詢日誌的路徑 若是linux系統,會涉及許可權問題 第二句使用來定義用時超過過多少秒的查詢...
資料庫慢查詢
使用mysql慢查日誌對有效率問題的sql語句進行優 mysql show variables like slow query log 檢視伺服器慢查詢日啟 mysql set global slow query log on 開啟慢查詢日誌 mysql set global long query ...
資料庫查詢慢
今天寫了個兩個關聯的sql語句,select from a join b on a.relationid b.id where b.otherid 123 a表中的relation跟b表中的id相關聯,當執行時資料庫的執行速度突然便面了,發現這個語句的執行時間特別的長。最開始的時候認為查詢慢是因為b...