Mysql日志记录慢查询及所有Sql
启慢查询日志,可以让MySQL记录下查询超过指定时间的语句。
通过定位分析性能的瓶颈,可以更好的优化数据库系统的性能。这是常用的MySQL性能优化方式。精准定位到慢查询语句,可以快速解决问题。
同时,有时候也需要监控所有Sql的执行,我们可以开启Mysql的日志,记录所有的Sql语句,方便排查问题。
记录所有Sql
1 | show variables like "%general_log%"; |
设置
1 | set general_log=on; |
再次查看
开启 慢查询
1 | mysql> show variables like 'slow_query%'; |
开启
在Mysql命令行操作
将 slow_query_log
全局变量设置为ON
状态
1 | set global slow_query_log='ON'; |
设置慢查询日志存放的位置
1 | set global slow_query_log_file='/usr/local/mysql/data/slow.log'; |
查询超过1秒就记录
1 | set global long_query_time=1; |
查看
1 | show variables like 'slow_query%'; |
测试
1 | select sleep(2); |
查看日志
1 | ls /usr/local/mysql/data/slow.log |
如果日志存在,MySQL开启慢查询设置成功!
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 螃蟹壳!