開啟慢查詢?nèi)罩?/p>
我們提供的服務(wù)有:成都做網(wǎng)站、成都網(wǎng)站制作、成都外貿(mào)網(wǎng)站建設(shè)、微信公眾號開發(fā)、網(wǎng)站優(yōu)化、網(wǎng)站認(rèn)證、瑪多ssl等。為上1000家企事業(yè)單位解決了網(wǎng)站和推廣的問題。提供周到的售前咨詢和貼心的售后服務(wù),是有科學(xué)管理、有技術(shù)的瑪多網(wǎng)站制作公司
mysql set global slow_query_log=1;
定義時間SQL查詢的超時時間
mysql set global long_query_time = 0.005;
查看慢查詢?nèi)罩镜谋4媛窂?/p>
mysql show global variables like 'slow_query_log_file';
查看慢查詢
cat /var/log/mysql/slow.log
一、MySQL數(shù)據(jù)庫有幾個配置選項可以幫助我們及時捕獲低效SQL語句 1,slow_query_log 這個參數(shù)設(shè)置為ON,可以捕獲執(zhí)行時間超過一定數(shù)值的SQL語句。 2,long_query_time 當(dāng)SQL語句執(zhí)行時間超過此數(shù)值時,就會被記錄到日志中,建議設(shè)置為1或者更短。 3,slow_query_log_file 記錄日志的文件名。 4,log_queries_not_using_indexes 這個參數(shù)設(shè)置為ON,可以捕獲到所有未使用索引的SQL語句,盡管這個SQL語句有可能執(zhí)行得挺快。 二、檢測mysql中sql語句的效率的方法 1、通過查詢?nèi)罩?(1)、Windows下開啟MySQL慢查詢 MySQL在Windows系統(tǒng)中的配置文件一般是是my.ini找到[mysqld]下面加上 代碼如下 log-slow-queries = F:/MySQL/log/mysqlslowquery。log long_query_time = 2 (2)、Linux下啟用MySQL慢查詢 MySQL在Windows系統(tǒng)中的配置文件一般是是my.cnf找到[mysqld]下面加上 代碼如下 log-slow-queries=/data/mysqldata/slowquery。log long_query_time=2 說明 log-slow-queries = F:/MySQL/log/mysqlslowquery。 為慢查詢?nèi)罩敬娣诺奈恢?,一般這個目錄要有MySQL的運行帳號的可寫權(quán)限,一般都將這個目錄設(shè)置為MySQL的數(shù)據(jù)存放目錄; long_query_time=2中的2表示查詢超過兩秒才記錄;
開啟mysql慢查詢?nèi)罩?/p>
查看配置:
//查看慢查詢時間
show variables like "long_query_time";默認(rèn)10s
//查看慢查詢配置情況
show status like "%slow_queries%";
//查看慢查詢?nèi)罩韭窂?/p>
show variables like "%slow%";
修改配置文件
在my.ini中加上下面兩句話
log-slow-queries = D:\wamp\mysql_slow_query.log
long_query_time=5
第一句使用來定義慢查詢?nèi)罩镜穆窂剑ㄒ驗槭莣indows,所以不牽涉權(quán)限問題)
第二句使用來定義查過多少秒的查詢算是慢查詢,我這里定義的是5秒
第二步:查看關(guān)于慢查詢的狀態(tài)
執(zhí)行如下SQL語句來查看mysql慢查詢的狀態(tài)
show variables like '%slow%';
執(zhí)行結(jié)果會把是否開啟慢查詢、慢查詢的秒數(shù)、慢查詢?nèi)罩镜刃畔⒋蛴≡谄聊簧稀?/p>
第三步:執(zhí)行一次慢查詢操作
其實想要執(zhí)行一次有實際意義的慢查詢比較困難,因為在自己測試的時候,就算查詢有20萬條數(shù)據(jù)的海量表,也只需要0.幾秒。我們可以通過如下語句代替:
SELECT SLEEP(10);
第四步:查看慢查詢的數(shù)量
通過如下sql語句,來查看一共執(zhí)行過幾次慢查詢:
show global status like '%slow%';
mysql日志的配置:
注意:這些日文件在mysql重啟的時候才會生成
#記錄所有sql語句
log=E:/mysqllog/mysql.log
#記錄數(shù)據(jù)庫啟動關(guān)閉信息,以及運行過程中產(chǎn)生的錯誤信息
log-error=E:/mysqllog/myerror.log
# 記錄除select語句之外的所有sql語句到日志中,可以用來恢復(fù)數(shù)據(jù)文件
log-bin=E:/mysqllog/bin
#記錄查詢慢的sql語句
log-slow-queries=E:/mysqllog/slow.log
#慢查詢時間
long_query_time=0.5
1,配置開啟
Linux:
在mysql配置文件my.cnf中增加
log-slow-queries=/var/lib/mysql/slowquery.log (指定日志文件存放位置,可以為空,系統(tǒng)會給一個缺省的文件host_name-slow.log)long_query_time=2 (記錄超過的時間,默認(rèn)為10s)log-queries-not-using-indexes (log下來沒有使用索引的query,可以根據(jù)情況決定是否開啟)log-long-format (如果設(shè)置了,所有沒有使用索引的查詢也將被記錄)
Windows:
在my.ini的[mysqld]添加如下語句:log-slow-queries = E:\web\mysql\log\mysqlslowquery.loglong_query_time = 2(其他參數(shù)如上)
2,查看方式
Linux:
使用mysql自帶命令mysqldumpslow查看
常用命令
-s ORDER what to sort by (t, at, l, al, r, ar etc), 'at’ is default
-t NUM just show the top n queries
-g PATTERN grep: only consider stmts that include this string
s,是order的順序,說明寫的不夠詳細(xì),包括看了代碼,主要有 c,t,l,r和ac,at,al,ar,分別是按照query次數(shù),時間,lock的時間和返回的記錄數(shù)來排序,前面加了a的時倒序 -t,是top n的意思,即為返回前面多少條的數(shù)據(jù) -g,后邊可以寫一個正則匹配模式,大小寫不敏感的
mysqldumpslow -s c -t 20 host-slow.log
mysqldumpslow -s r -t 20 host-slow.log
上述命令可以看出訪問次數(shù)最多的20個sql語句和返回記錄集最多的20個sql。
mysqldumpslow -t 10 -s t -g “l(fā)eft join” host-slow.log這個是按照時間返回前10條里面含有左連接的sql語句。
1、開啟慢查詢 找到 MySQL 的配置文件 ,my.cnf (Windows 為 my.ini ),在 MySQL 下增加下面幾行: long_query_time=2 log-slow-queries= /usr/var/slowquery.log 上面的 2 是查詢的時間,即當(dāng)一條 SQL 執(zhí)行時間超過2秒的時候才記錄
如何查找MySQL中查詢慢的SQL語句
一、MySQL數(shù)據(jù)庫有幾個配置選項可以幫助我們及時捕獲低效SQL語句
1,slow_query_log
這個參數(shù)設(shè)置為ON,可以捕獲執(zhí)行時間超過一定數(shù)值的SQL語句。
2,long_query_time
當(dāng)SQL語句執(zhí)行時間超過此數(shù)值時,就會被記錄到日志中,建議設(shè)置為1或者更短。
3,slow_query_log_file
記錄日志的文件名。
4,log_queries_not_using_indexes
這個參數(shù)設(shè)置為ON,可以捕獲到所有未使用索引的SQL語句,盡管這個SQL語句有可能執(zhí)行得挺快。
二、檢測mysql中sql語句的效率的方法
1、通過查詢?nèi)罩?/p>
(1)、Windows下開啟MySQL慢查詢
MySQL在Windows系統(tǒng)中的配置文件一般是是my.ini找到[mysqld]下面加上
代碼如下
log-slow-queries = F:/MySQL/log/mysqlslowquery。log
long_query_time = 2
(2)、Linux下啟用MySQL慢查詢
MySQL在Windows系統(tǒng)中的配置文件一般是是my.cnf找到[mysqld]下面加上
代碼如下
log-slow-queries=/data/mysqldata/slowquery。log
long_query_time=2
網(wǎng)站欄目:mysql怎么看慢查詢,mysql查看查詢慢的語句
網(wǎng)頁網(wǎng)址:http://muchs.cn/article44/phesee.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供手機網(wǎng)站建設(shè)、云服務(wù)器、網(wǎng)站營銷、虛擬主機、App開發(fā)、
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)