百木园-与人分享,
就是让自己快乐。

MYSQL 高级

SQL查询流程:

 

  • 1. 通过客户端/服务器通信协议与 MySQL 建立连接
  • 2. 查询缓存,这是 MySQL 的一个可优化查询的地方,如果开启了 Query Cache 且在查询缓存过程中查 询到完全相同的 SQL 语句,则将查询结果直接返回给客户端;如果没有开启Query Cache 或者没有查询到 完全相同的 SQL 语句则会由解析器进行语法语义解析,并生成解析树。
  • 3. 预处理器生成新的解析树。
  • 4. 查询优化器生成执行计划。
  • 5. 查询执行引擎执行 SQL 语句,此时查询执行引擎会根据 SQL 语句中表的存储引擎类型,以及对应的 API 接口与底层存储引擎缓存或者物理文件的交互情况,得到查询结果,由MySQL Server 过滤后将查询结 果缓存并返回给客户端。若开启了 Query Cache,这时也会将SQL 语句和结果完整地保存到 Query Cache 中,以后若有相同的 SQL 语句执行则直接返回结果。

 

MySQL物理文件:

 

 日志文件:

  • error log 错误日志 排错 /var/log/mysqld.log【默认开启】
  • bin log 二进制日志 备份 增量备份 DDL DML DCL
  • Relay log 中继日志 复制 接收 replication master
  • slow log 慢查询日志 调优 查询时间超过指定值

-- 查看错误日志文件路径
show variables like \'log_error\';
+---------------+---------------------+
| Variable_name | Value |
+---------------+---------------------+
| log_error | /var/log/mysqld.log |
+---------------+---------------------+

来源:https://www.cnblogs.com/wanghzh/p/14839376.html
图文来源于网络,如有侵权请联系删除。

未经允许不得转载:百木园 » MYSQL 高级

相关推荐

  • 暂无文章