在网站上显示备案信息,韩国女排出线,wordpress 首页进不去,长沙公司网站设计报价mysql的慢查询日志开启与问题定位 一张数据库数据很大的表。 查询一条数据#xff0c;很快就查询出来了。 根据不同的条件#xff0c;查到的数据相同#xff0c;但是查询所花费的时间却是不同的。 使用命令查询慢查询日志是否开启#xff0c;目前它是关闭着的。 开启日志。…mysql的慢查询日志开启与问题定位 一张数据库数据很大的表。 查询一条数据很快就查询出来了。 根据不同的条件查到的数据相同但是查询所花费的时间却是不同的。 使用命令查询慢查询日志是否开启目前它是关闭着的。 开启日志。
也可以手动设置日志文件的所在路径。
这个日志只记录慢查询的sql语句而不是所有的sql语句。 时间单位是秒。 查看日志 我们执行两条sql一个大于临界时间一个低于临界时间。 超过临界时间的sql数据会存到日志中。
这种方法会帮我们定位到具体是哪条sql语句执行的慢。 mysql的sql语句执行过程解析
我们退出下数据库再重启一下数据库服务 一旦服务重启慢查询日志就会恢复到默认配置。当然一般工作中是不会太多情况去重启mysql服务的。
如果想让它永久生效只需要修改配置文件 增加下面三行即可。
要记住修改了配置文件后必须要重启服务。
我们能定位到哪条语句慢了我们还需要看看如何去解析这条语句 我们这两条语句一个快一个慢。
我们就可以分别解析一下 我们可以看到一条使用了主键索引查询范围是1条另一个语句没有用索引查询范围是全部数据。我们分析到这里就能看到问题所在了。
但是如果还不能看到问题原因就会使用到我们接下来的方法 先查看是否开启了性能详情。 我们去开启性能 再一次使用查询慢的语句 可以看到这条sql语句执行每一步所耗费的时间。
性能线程的详细解释官方文档链接
MySQL :: MySQL 5.7 Reference Manual :: 8.14.3 General Thread States
mysql语句优化的几个小建议 条件使用or可能会使索引丢失浪费了索引。
当字段类型转换的时候也会丢失索引。