国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數(shù)據(jù)庫 > MySQL > 正文

MySQL慢查詢?nèi)罩镜幕臼褂媒坛?/h1>
2024-07-25 19:09:29
字體:
供稿:網(wǎng)友

慢查詢?nèi)罩鞠嚓P(guān)參數(shù)

MySQL 慢查詢的相關(guān)參數(shù)解釋:slow_query_log :是否開啟慢查詢?nèi)罩荆?表示開啟,0表示關(guān)閉。

  • slow_query_log :是否開啟慢查詢?nèi)罩荆?表示開啟,0表示關(guān)閉。
  • log-slow-queries :舊版(5.6以下版本)MySQL數(shù)據(jù)庫慢查詢?nèi)罩敬鎯?chǔ)路徑。可以不設(shè)置該參數(shù),系統(tǒng)則會(huì)默認(rèn)給一個(gè)缺省的文件host_name-slow.log
  • slow-query-log-file:新版(5.6及以上版本)MySQL數(shù)據(jù)庫慢查詢?nèi)罩敬鎯?chǔ)路徑??梢圆辉O(shè)置該參數(shù),系統(tǒng)則會(huì)默認(rèn)給一個(gè)缺省的文件host_name-slow.log
  • long_query_time :慢查詢閾值,當(dāng)查詢時(shí)間多于設(shè)定的閾值時(shí),記錄日志。
  • log_queries_not_using_indexes:未使用索引的查詢也被記錄到慢查詢?nèi)罩局校蛇x項(xiàng))。
  • log_output:日志存儲(chǔ)方式。log_output='FILE'表示將日志存入文件,默認(rèn)值是'FILE'。log_output='TABLE'表示將日志存入數(shù)據(jù)庫,這樣日志信息就會(huì)被寫入到mysql.slow_log表中。MySQL數(shù)據(jù)<br>庫支持同時(shí)兩種日志存儲(chǔ)方式,配置的時(shí)候以逗號(hào)隔開即可,如:log_output='FILE,TABLE'。日志記錄到系統(tǒng)的專用日志表中,要比記錄到文件耗費(fèi)更多的系統(tǒng)資源,因此對(duì)于需要啟用慢查詢?nèi)罩?,又?lt;br>要能夠獲得更高的系統(tǒng)性能,那么建議優(yōu)先記錄到文件。

一. 設(shè)置方法

使用慢查詢?nèi)罩纠锊东@

啟用之前需要先進(jìn)行一些設(shè)置

方法一:全局變量設(shè)置

設(shè)置慢查詢?nèi)罩镜娜罩疚募恢?/p>

set global slow_query_log_file = "D:/slow_log/slow_log.log" ;

設(shè)置是否對(duì)未使用索引的SQL進(jìn)行記錄

set global log_queries_not_using_indexes = on;

設(shè)置只要SQL執(zhí)行時(shí)間超過n秒的就記錄

set global long_query_time = 0.001 ;

此處設(shè)置的0.001秒,便于測(cè)試,一般情況比這個(gè)大

啟用mysql慢查詢?nèi)罩?/p>

set global slow_query_log = on;

方法二:配置文件設(shè)置

修改配置文件my.cnf,在[mysqld]下的下方加入

[mysqld]slow_query_log = ONlog_queries_not_using_indexes = ON;slow_query_log_file = /usr/local/mysql/data/slow.loglong_query_time = 1

查看設(shè)置后的參數(shù)

show variables like 'slow_query%';show variables like 'long_query__time';

二. 慢查詢?nèi)罩居涗浀膬?nèi)容

Time   Id Command Argument# Time: 2019-01-08T04:12:09.269315Z # User@Host: h5_test[h5_test] @ localhost [::1] Id: 12 # Query_time: 0.000831 Lock_time: 0.000198 Rows_sent: 1 Rows_examined: 3 use mc_productdb;SET timestamp=1546920729;SELECT t.customer_id,t.title,t.content FROM (SELECT customer_id FROM product_comment WHERE product_id =199726 AND audit_status = 1 LIMIT 0,15)a JOIN product_comment t ON a.customer_id = t.comment_id;
  • Time:執(zhí)行查詢的日期時(shí)間
  • User@Host:執(zhí)行查詢的用戶和客戶端IP
  • Id:是執(zhí)行查詢的線程Id
  • Query_time:SQL執(zhí)行所消耗的時(shí)間
  • Lock_time:執(zhí)行查詢對(duì)記錄鎖定的時(shí)間
  • Rows_sent:查詢返回的行數(shù)
  • Rows_examined:為了返回查詢的數(shù)據(jù)所讀取的行數(shù)

三. 如何分析慢查詢?nèi)罩?/strong>

Usage: mysqldumpslow [ OPTS... ] [ LOGS... ]Parse and summarize the MySQL slow query log. Options are --verbose verbose --debug debug --help write this text to standard output -v  verbose -d  debug -s ORDER what to sort by (al, at, ar, c, l, r, t), 'at' is default  al: average lock time  ar: average rows sent  at: average query time   c: count   l: lock time   r: rows sent   t: query time -r  reverse the sort order (largest last instead of first) -t NUM just show the top n queries -a  don't abstract all numbers to N and strings to 'S' -n NUM abstract numbers with at least n digits within names -g PATTERN grep: only consider stmts that include this string -h HOSTNAME hostname of db server for *-slow.log filename (can be wildcard),  default is '*', i.e. match all -i NAME name of server instance (if using mysql.server startup script) -l  don't subtract lock time from total time

由于慢查詢?nèi)罩局袝?huì)含有大量的重復(fù)的SQL,為了方便,可以通過mysql提供的命令行工具 mysqldumpslow 來分析日志

$ mysqldumpslow.pl slow_log.logReading mysql slow query log from slow_log.logCount: 1 Time=0.00s (0s) Lock=0.00s (0s) Rows=0.0 (0), 0users@0hosts C:/Program Files/MySQL/MySQL Server N.N/bin/mysqld.exe, Version: N.N.N-log (MySQL Community Server (GPL)). started with: TCP Port: N, Named Pipe: MySQL # Time: N-N-08T04:N:N.269315Z # User@Host: h5_test[h5_test] @ localhost [::N] Id: N # Query_time: N.N Lock_time: N.N Rows_sent: N Rows_examined: N use mc_productdb; SET timestamp=N; SELECT t.customer_id,t.title,t.content FROM ( SELECT customer_id FROM product_comment WHERE product_id =N AND audit_status = N LIMIT N,N )a JOIN product_comment t ON a.customer_id = t.comment_id

與慢查詢?nèi)罩局杏涗浀臄?shù)據(jù)是相似的,只是多出了一行Count,這一行記錄的是這條SQL在記錄慢查詢?nèi)罩酒陂g的執(zhí)行次數(shù),如果一個(gè)SQL多次被執(zhí)行,用這個(gè)命令分析時(shí),只會(huì)出現(xiàn)一個(gè)SQL日志,Count里的數(shù)值代表執(zhí)行次數(shù),其他數(shù)字為了合并表示用N代替

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,如果有疑問大家可以留言交流,謝謝大家對(duì)VeVb武林網(wǎng)的支持。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到MYSQL教程頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

主站蜘蛛池模板: 昂仁县| 合江县| 平乐县| 石屏县| 凭祥市| 宜黄县| 玉山县| 安陆市| 晋州市| 汝南县| 石城县| 宾川县| 斗六市| 泰和县| 章丘市| 永康市| 嘉鱼县| 龙胜| 韩城市| 宁南县| 沅江市| 东乡县| 朝阳县| 武义县| 城固县| 临漳县| 祁东县| 裕民县| 如东县| 麻城市| 遂平县| 济宁市| 瓮安县| 通许县| 平果县| 环江| 亳州市| 土默特左旗| 永胜县| 西和县| 盘锦市|