MySQL 高级(六)查询截取分析
问题:在开发环境中,分析出SQL并优化的步骤是什么?
流程:
- 观察,至少跑1天,看看生产的慢SQL情况
- 开启慢查询日志,设置阈值,比如超过5秒钟的就是慢SQL,并将它抓取出来
- EXPLAIN+慢SQL分析
- show profile 进一步分析
- 运维经理 or DBA ,进行SQL数据库服务器的参数调优
总结要点:
- 慢查询开启并捕获
- EXPLAIN+慢SQL分析
- show profile 查询SQL在MySQL服务器里面的执行细节和生命周期情况
- SQL数据库服务器的参数调优
1 慢查询日志
慢查询日志是MySQL提供的一种日志记录,它是用来记录MySQL中响应时间超过阈值的语句,具体指运行时间超过long_query_time值(默认10s)的SQL,则会被记录在慢查询日志中。
默认情况下,MySQL数据库没有开启慢查询日志的功能,需要我们手动设置这个参数。如果不是调优需要的话,一般不建议启动这个参数,会带来性能的消耗。
1.1 使用方法
查看是否开启: