寻找问题语句
首先有个暴力方法我把sql语句放navicat一个一个尝试肯定能找到问题语句但是这个肯定不是面试官想要的答案,其实他想知道的就是你遇到过这种问题没有,然后你是怎么解决的。
Mysql 是有个慢查询的但是默认是关闭状态需要你开启并且配置查询时间超过多少会给你打印查询日志出来然后根据日志查看那条语句执行的慢再进行优化
配置慢查询详细步骤 百度经验 配置好后最好重启下MySQL服务 然后查看对应日志文件即可
解决查询慢问题
很多情况都会造成查询慢简单的说几种
- 网络状况不佳
排除网络问题换个网换台主机试一试
- 内存不够
如果是内存原因那就加内存呗
- 代码逻辑问题
如果是MVC模式那就逐一排查 是模块层有问题还是视图层还是控制层有问题
- 查询语句问题
假如有嵌套查询最好用连接查询(如果说必须用嵌套查询那么只能说你表设计的有问题)
反正就是各种sql优化了