文章目录
优化SQL语句的生命周期涉及6个独立部分,包括如何 截取SQL语句、 识别有问题的SQL语句以及在 开始分析前如何确认SQL语句。
SQL生命周期的优化分6个阶段:
- 截取SQL语句
- 识别并分类有问题的SQL语句
- 确认SQL语句的当前操作
- 分析SQL语句和辅助信息
- 优化SQL语句
- 验证SQL优化的结果
截取SQL语句
在审查和优化SQL语句前,我们需要采集那些需要审查的SQL语句。
常用的SQL语句截取技术如下:
- 全面查询日志
- 慢查询日志
- 二进制日志
- 进程列表
- 引擎状态
- MySQL连接器
- 应用程序代码
- information——schema
- performance——schema
- sql语句统计信息插件
- MySQL代理
- TCP/IP
全面查询日志
MySQL的全面查询日志 允许你截取所有在这个数据库实例上运行的SQL语句。我们可以配置这个日志输出到文件或者数据库表中。
全面查询日志功能只有启用或者禁用两种状态,没有其他控制粒度
通过如下sql配置启用全面查询日志:
也可以通过SQL语句动态地启用或者禁用全面查询日志,比能输出到文件或者数据库表中:
慢查询日志