MySQL 5.7慢查詢?nèi)罩驹趺撮_啟和查看?
一、什么是MySQL慢查詢?nèi)罩荆?/p>
MySQL慢查詢?nèi)罩臼怯脕碛涗泩?zhí)行時(shí)間超過指定時(shí)間的SQL語(yǔ)句的日志。通過開啟慢查詢?nèi)罩荆梢哉业綀?zhí)行效率低下的SQL語(yǔ)句,從而優(yōu)化數(shù)據(jù)庫(kù)性能。
二、如何開啟MySQL慢查詢?nèi)罩荆?/p>
yf配置文件
yf配置文件中增加如下配置:
ysql/slow.log
ge = 1
ge表示超過多少秒的SQL語(yǔ)句會(huì)被記錄到慢查詢?nèi)罩局小?/p>
2. 通過命令行開啟
使用以下命令開啟慢查詢?nèi)罩荆?/p>
ysql>SET GLOBAL slow_query_log = 'ON';
ysqlysql/slow.log';
ysqlge = 1;
三、如何查看MySQL慢查詢?nèi)罩荆?/p>
1. 查看日志文件
可以直接查看慢查詢?nèi)罩疚募撐募J(rèn)存放于MySQL的數(shù)據(jù)目錄下。
ysqldumpslow工具
ysqldumpslow是MySQL提供的一個(gè)用于分析慢查詢?nèi)罩镜墓ぞ摺J褂迷摴ぞ呖梢暂敵雎樵內(nèi)罩局械腟QL語(yǔ)句及其執(zhí)行時(shí)間等信息。
例如,使用以下命令可以輸出慢查詢?nèi)罩局袌?zhí)行時(shí)間最長(zhǎng)的10條SQL語(yǔ)句:
ysqldumpslowysql/slow.log
其中,-s t表示按照?qǐng)?zhí)行時(shí)間排序;-t 10表示輸出前10條記錄。
四、注意事項(xiàng)
開啟慢查詢?nèi)罩緯?huì)對(duì)MySQL的性能產(chǎn)生一定影響,因此在生產(chǎn)環(huán)境中應(yīng)該謹(jǐn)慎開啟。另外,需要定期清理慢查詢?nèi)罩疚募苊馕募^大影響系統(tǒng)性能。