当前位置:Gxlcms > 数据库问题 > MYSQL:基础

MYSQL:基础

时间:2021-07-01 10:21:17 帮助过:21人阅读

MYSQL执行流程

建立连接
  • 连接协议:TCP/IP、Unix Socket
  • 通信方式:半双工
发送请求

查询缓存(默认缓存不开启)

解析器
  • 词法解析
  • 语法解析
    生成解析树
预处理
  • 语义解析
    得到新的解析树
优化器
  • 选择开销最小的执行计划
查询执行引擎(执行器)
存储引擎

概念:存储引擎是组织数据存放的一种形式。

  • MyISAM:只支持表锁;不支持事务;存储了总数量,count很快,插入比较快。
  • InnoDB:支持事务;支持外键;支持行锁;聚簇索引。

MYSQL架构

技术图片

更新语句

  • buffer pool(默认128M),修改都是执行到buffer poll,此时数据不一致,叫脏页,会定期刷到磁盘中。
  • page大小(16kb)
  • change buffer:假如没有唯一性校验,会将变更缓存至change buffer
  • merge:buffer刷到磁盘中
  • log buffer:即将写入到redo log的缓冲区。刷盘时机:(默认1)每次事务提交刷盘到redolog磁盘文件。
    crash-safe:用redo log(顺序I/O,比磁盘的随机I/O效率高)实现异常恢复。
    技术图片

redolog

1、InnoDB实现
2、page物理日志
3、大小固定48M,满了会刷盘

binlog

  • 逻辑日志
  • 主从
  • 数据恢复

MYSQL:基础

标签:red   数据恢复   redolog   语义   缓冲   pool   表锁   磁盘   alt   

人气教程排行