如何解决慢sql(SQL高级SQL的常见问题-慢查询排查)
目的
使用 MySQL 提供的慢查询日志,找出记录的响应时间超过阈值的 SQL 语句。
使用方法慢查询日志默认是关闭的。
可以通过 2 种方式开启:
- 临时开启
- 永久开启
临时开启是在内存中开启。重启 MySQL 服务会设置失效。
永久开启是在配置文件中追加。
阈值设定方式有 2 种:
- 临时设置
- 永久设置
临时设置,设置完毕重新登陆起效。
永久设置
代码实例
实例 1
目的:通过 sleep(n) 来模拟慢查询,并在慢查询日志中查看。
select sleep(4)
执行结果:
实例 2
目的:通过 sleep(n) 来模拟慢查询,并使用 mysqldumpslow 工具在慢查询日志中查看。
select sleep(4)
执行结果:
获取返回记录最多的 3 个 SQL
获取访问次数最多的 3 个 SQL
按照时间排序,前 10 条包含 left join 查询语句的 SQL
,
免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com