SQL的生命周期

文章目录

    • 截取SQL语句
      • 全面查询日志
      • 慢查询日志
      • 二进制日志
      • 进程列表
      • 引擎状态
      • MySQL连接器
      • 应用程序代码
      • information——schema
      • performance——schema
      • SQL语句统计插件
      • MySQL Proxy
      • TCP/IP
    • 识别有问题的语句
      • 慢查询日志分析
      • TCP/IP分析
    • 确认语句执行
      • 环境
      • 时间统计

优化SQL语句的生命周期涉及6个独立部分,包括如何 截取SQL语句识别有问题的SQL语句以及在 开始分析前如何确认SQL语句
SQL生命周期的优化分6个阶段:

  1. 截取SQL语句
  2. 识别并分类有问题的SQL语句
  3. 确认SQL语句的当前操作
  4. 分析SQL语句和辅助信息
  5. 优化SQL语句
  6. 验证SQL优化的结果

截取SQL语句

在审查和优化SQL语句前,我们需要采集那些需要审查的SQL语句。
常用的SQL语句截取技术如下:

  • 全面查询日志
  • 慢查询日志
  • 二进制日志
  • 进程列表
  • 引擎状态
  • MySQL连接器
  • 应用程序代码
  • information——schema
  • performance——schema
  • sql语句统计信息插件
  • MySQL代理
  • TCP/IP

全面查询日志

MySQL的全面查询日志 允许你截取所有在这个数据库实例上运行的SQL语句。我们可以配置这个日志输出到文件或者数据库表中。
全面查询日志功能只有启用或者禁用两种状态,没有其他控制粒度
通过如下sql配置启用全面查询日志:
SQL的生命周期_第1张图片
也可以通过SQL语句动态地启用或者禁用全面查询日志,比能输出到文件或者数据库表中:
SQL的生命周期_第2张图片SQL的生命周期_第3张图片
SQL的生命周期_第4张图片

慢查询日志

SQL的生命周期_第5张图片
SQL的生命周期_第6张图片

二进制日志

SQL的生命周期_第7张图片
SQL的生命周期_第8张图片SQL的生命周期_第9张图片

进程列表

SQL的生命周期_第10张图片SQL的生命周期_第11张图片

引擎状态

SQL的生命周期_第12张图片SQL的生命周期_第13张图片

MySQL连接器

在这里插入图片描述SQL的生命周期_第14张图片SQL的生命周期_第15张图片

应用程序代码

SQL的生命周期_第16张图片SQL的生命周期_第17张图片SQL的生命周期_第18张图片在这里插入图片描述SQL的生命周期_第19张图片

information——schema

SQL的生命周期_第20张图片

performance——schema

SQL的生命周期_第21张图片

SQL语句统计插件

开源项目sqlstats是一个利用审计插件接口来截取MySQL5.5以上所有sql语句的MySQL插件。

MySQL Proxy

SQL的生命周期_第22张图片

TCP/IP

SQL的生命周期_第23张图片

识别有问题的语句

在这里插入图片描述
SQL的生命周期_第24张图片SQL的生命周期_第25张图片SQL的生命周期_第26张图片SQL的生命周期_第27张图片SQL的生命周期_第28张图片

慢查询日志分析

SQL的生命周期_第29张图片SQL的生命周期_第30张图片SQL的生命周期_第31张图片

TCP/IP分析

SQL的生命周期_第32张图片
SQL的生命周期_第33张图片
SQL的生命周期_第34张图片
SQL的生命周期_第35张图片
SQL的生命周期_第36张图片

确认语句执行

SQL的生命周期_第37张图片

环境

SQL的生命周期_第38张图片
SQL的生命周期_第39张图片

时间统计

SQL的生命周期_第40张图片
在这里插入图片描述
SQL的生命周期_第41张图片SQL的生命周期_第42张图片

你可能感兴趣的:(SQL优化系列)