如何在mysql查找效率慢的SQL语句
查看慢SQL是否启用,查看命令:show variables like 'log_slow_queries';
如果结果为ON则是开启了,如果为OFF则表示禁用了。
开启慢查询命令:set global log_slow_queries = on;
查看是否开启:show variables like 'log_slow_queries';
查看慢查询参数,即设置超过多少秒的查询归为了慢查询。参数为:long_query_time,查询命令: show global variables like 'long_query_time';
mysql默认时间为10秒,即10秒及以上的查询被归为了慢查询。我们的实际项目中根本就不可能这么包容你,所以得提供查询效率优化sql,让程序更快的执行。
这里设置时间为1秒,即超过1秒就会被认为慢查询。设置命令:set global long_query_time =1;用命令设置的,会立即生效,不用重启mysql服务。但重启mysql服务后就会失效。
查看设置的时间, show global variables like 'long_query_time';即可看到现在已经变为1秒了
查看慢查询存放日志,命令: show variables like 'slow_query_log_file';
去相应目录下查看即可。