MySQL 慢查詢?nèi)罩镜拈_啟與配置
簡(jiǎn)介
MySQL 慢查詢?nèi)罩臼桥挪閱栴} SQL 語句,以及檢查當(dāng)前 MySQL 性能的一個(gè)重要功能。
查看是否開啟慢查詢功能:
mysql> show variables like 'slow_query%'; +---------------------+------------------------------------+ | Variable_name | Value | +---------------------+------------------------------------+ | slow_query_log | OFF | | slow_query_log_file | /var/lib/mysql/instance-1-slow.log | +---------------------+------------------------------------+ 2 rows in set (0.01 sec)
mysql> show variables like 'long_query_time'; +-----------------+-----------+ | Variable_name | Value | +-----------------+-----------+ | long_query_time | 10.000000 | +-----------------+-----------+ 1 row in set (0.00 sec)
說明:
slow_query_log 慢查詢開啟狀態(tài)
slow_query_log_file 慢查詢?nèi)罩敬娣诺奈恢茫ㄟ@個(gè)目錄需要MySQL的運(yùn)行帳號(hào)的可寫權(quán)限,一般設(shè)置為MySQL的數(shù)據(jù)存放目錄)
long_query_time 查詢超過多少秒才記錄
配置
臨時(shí)配置
默認(rèn)沒有開啟慢查詢?nèi)罩居涗?,通過命令臨時(shí)開啟:
mysql> set global slow_query_log='ON'; Query OK, 0 rows affected (0.00 sec) mysql> set global slow_query_log_file='/var/lib/mysql/instance-1-slow.log'; Query OK, 0 rows affected (0.00 sec) mysql> set global long_query_time=2; Query OK, 0 rows affected (0.00 sec)
永久配置
修改配置文件達(dá)到永久配置狀態(tài):
/etc/mysql/conf.d/mysql.cnf [mysqld] slow_query_log = ON slow_query_log_file = /var/lib/mysql/instance-1-slow.log long_query_time = 2
配置好后,重新啟動(dòng) MySQL 即可。
測(cè)試
通過運(yùn)行下面的命令,達(dá)到問題 SQL 語句的執(zhí)行:
mysql> select sleep(2); +----------+ | sleep(2) | +----------+ | 0 | +----------+ 1 row in set (2.00 sec)
然后查看慢查詢?nèi)罩緝?nèi)容:
$ cat /var/lib/mysql/instance-1-slow.log /usr/sbin/mysqld, Version: 8.0.13 (MySQL Community Server - GPL). started with: Tcp port: 3306 Unix socket: /var/run/mysqld/mysqld.sock Time Id Command Argument /usr/sbin/mysqld, Version: 8.0.13 (MySQL Community Server - GPL). started with: Tcp port: 3306 Unix socket: /var/run/mysqld/mysqld.sock Time Id Command Argument # Time: 2018-12-18T05:55:15.941477Z # User@Host: root[root] @ localhost [] Id: 53 # Query_time: 2.000479 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 0 SET timestamp=1545112515; select sleep(2);
以上就是MySQL 慢查詢?nèi)罩镜拈_啟與配置的詳細(xì)內(nèi)容,更多關(guān)于MySQL 慢查詢?nèi)罩镜馁Y料請(qǐng)關(guān)注腳本之家其它相關(guān)文章!
- MySQL慢查詢?nèi)罩緎lowlog的具體使用
- 詳解MySQL的慢查詢?nèi)罩竞湾e(cuò)誤日志
- 怎樣快速開啟MySQL的慢查詢?nèi)罩?/a>
- MySQL通用查詢?nèi)罩竞吐樵內(nèi)罩救娣治?/a>
- MySQL慢查詢?nèi)罩局械腖ock_time由來解析
- MySQL慢查詢?nèi)罩境敿?xì)總結(jié)
- 深入了解MySQL中的慢查詢?nèi)罩?/a>
- MySQL優(yōu)化教程之慢查詢?nèi)罩緦?shí)踐
- MySQL 慢查詢?nèi)罩旧钊肜斫?/a>
- MySQL慢查詢?nèi)罩镜淖饔煤烷_啟
- MySQL慢查詢?nèi)罩?Slow Query Log)的實(shí)現(xiàn)
相關(guān)文章
解決Mysql的left join無效及使用的注意事項(xiàng)說明
這篇文章主要介紹了解決Mysql的left join無效及使用的注意事項(xiàng)說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2021-07-07
MySQL數(shù)據(jù)庫中遇到no?database?selected問題解決辦法
這篇文章主要給大家介紹了關(guān)于MySQL數(shù)據(jù)庫中遇到no?database?selected問題的解決辦法,這是MySQL數(shù)據(jù)庫的錯(cuò)誤提示,意思是沒有選擇數(shù)據(jù)庫,在使用MySQL命令行操作時(shí)需要先選擇要操作的數(shù)據(jù)庫,否則就會(huì)出現(xiàn)這個(gè)錯(cuò)誤,需要的朋友可以參考下2024-03-03
MySQL常用的日期時(shí)間函數(shù)匯總(附實(shí)例)
日期時(shí)間處理對(duì)大家來說應(yīng)該都不陌生了,下面這篇文章主要給大家介紹了關(guān)于MySQL常用的日期時(shí)間函數(shù),文中通過圖文介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用mysql具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2023-03-03
mysql 5.7.21 安裝配置方法圖文教程(window)
這篇文章主要為大家詳細(xì)介紹了window環(huán)境下mysql5.7.21安裝配置方法圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02
使用navicat 8實(shí)現(xiàn)創(chuàng)建數(shù)據(jù)庫和導(dǎo)入數(shù)據(jù) 管理用戶與權(quán)限[圖文方法]
使用navicat8實(shí)現(xiàn)創(chuàng)建數(shù)據(jù)庫和導(dǎo)入數(shù)據(jù)的方法,需要的朋友可以參考下。2011-04-04
mysql在項(xiàng)目中怎么選事務(wù)隔離級(jí)別
Mysql默認(rèn)的事務(wù)隔離級(jí)別是可重復(fù)讀,那互聯(lián)網(wǎng)項(xiàng)目中Mysql也是用默認(rèn)隔離級(jí)別,但在項(xiàng)目中呢,下面我們就一起來了解一下2021-05-05

