网站慢查不出来?开MySQL慢日志,找全表扫描的烂SQL

刚刚阅读1回复0
genmulu
genmulu
  • 管理员
  • 注册排名1
  • 经验值3465
  • 级别管理员
  • 主题693
  • 回复0
楼主

很多新手网站慢,查完图片、插件都没问题,最后发现是MySQL慢查询拖的,今天说一下新手怎么找数据库慢查询。

怎么开慢查询日志

在宝塔的MySQL设置里,打开慢日志,设置超过1秒的查询记录下来,重启MySQL,网站跑一段时间,就能在日志里看到哪些SQL查得慢。

慢查询一般是什么原因

最多的就是表没加索引,查一个有十几万行的表,全表扫一遍,当然慢。给经常查的字段,比如文章分类ID、文章ID、用户ID,加个索引,查询速度能快几百倍。

其次是查询写得烂,select * from 表,一次查几十行没用的字段,或者联表太多表,这种要么优化SQL,要么加缓存。

新手怎么处理

别自己瞎改SQL,用CMS的话,先找慢的是哪个插件、哪个主题的功能,把那个功能关了或者换个轻量的;自己写的代码,给大表加索引,把常用查询结果缓存到Redis,别每次都查数据库。

新站数据量小,慢查询感觉不到,等数据量上来了,索引没加,数据库CPU很快就占满了,早做优化比出事了强。

本站源码来源于网络收集修改或者交换,甚至可能并非原创,如遇未经考证信息需持审慎态度。若有疑问,可联系本站处理。

本文地址:https://www.genmulu.cn/genmulu/158.html

0
回帖

网站慢查不出来?开MySQL慢日志,找全表扫描的烂SQL 期待您的回复!

取消
载入表情清单……
载入颜色清单……
插入网络图片

取消确定

图片上传中
编辑器信息
提示信息