概述
我们先了解下什么是慢查询
MySQL默认10秒内没有响应SQL结果,则为慢查询
慢查询都会有日志的存放
显示查看慢查询次数:
show status like 'slow_queries';
可以去修改MySQL慢查询默认时间来找出执行比较慢的语句
如何修改慢查询
查询慢查询时间
show variables like 'long_query_time';
修改慢查询时间
set long_query_time=1;
但是重启mysql之后,long_query_time依然是my.ini中的值
如何将慢查询定位到日志中
在默认情况下,我们的mysql不会记录慢查询,需要在启动mysql时候,指定记录慢查询才可以
binmysqld.exe --safe-mode --slow-query-log
[mysql5.5 可以在my.ini指定](安全模式启动,数据库将操作写入日志,以备恢复)
binmysqld.exe –log-slow-queries=d:/abc.log
[低版本mysql5.0可以在my.ini指定]
先关闭mysql,再启动, 如果启用了慢查询日志,默认把这个文件放在
my.ini 文件中记录的位置
mysql的日志文件都会存在这个目录里面
#Path to the database root
datadir=" C:/ProgramData/MySQL/MySQL Server 5.5/Data/"
此时sql执行时间如果大于你修改的慢查询时间,则会被记录到日志文件下,通过查看日志记录信息可以查看
sql执行时间Query_time, 上锁时间lock_time, 查询的sql语句等信息
再进行sql的具体优化就好啦
内容来自我的一位老师,对授课内容加以总结得出此文
最后
以上就是俊逸大船为你收集整理的如何从一个大项目中,迅速的定位执行速度慢的语句. (定位慢查询)的全部内容,希望文章能够帮你解决如何从一个大项目中,迅速的定位执行速度慢的语句. (定位慢查询)所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复