MySQL基础架构

摘要 :

通过把 MySQL 拆解一下,看看里面都有哪些“零件”,借由这个拆解过程,对 MySQL 有更深入的理解。这样当我们碰到 MySQL 的一些异常或者问题时,就能够直戳本质,更为快速地定位并解决问题。

MySQL基础架构示意图:能看到SQL 语句在 MySQL 的各个功能模块中的执行过程

MySQL可以分为Service层和存储引擎层两部分。

Server 层包括连接器、查询缓存、分析器、优化器、执行器,所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等。

而存储引擎层负责数据的存储和提取。其架构模式是插件式的,支持 InnoDB、MyISAM、Memory 等多个存储引擎。现在最常用的存储引擎是 InnoDB

MySQL日志系统

重要的日志模块:redo log

作用:确保事务的持久性。
防止在发生故障的时间点,尚有脏页未写入磁盘,在重启mysql服务的时候,根据redo log进行重做,从而达到事务的持久性这一特.

InnoDB 使用 Redo Log 来保证数据的一致性和可持久性,它采用 WAL 机制,即先写日志再写数据。具体来说,InnoDB 进行写操作时,先将数据操作记录在 log buffer 中,然后将 log buffer 中的数据刷到磁盘 log file 中,后续数据再落到数据 ibd 文件这一步骤由 checkpoint 来保证


  转载请注明: Hi 高虎 MySQL基础架构

 本篇
MySQL基础架构 MySQL基础架构
通常我们看到的只是输入一条语句,返回一个结果,却不知道这条语句在 MySQL 内部的执行过程
2021-03-01
下一篇 
编程珠玑 编程珠玑
计算机编程充满乐趣。有时候,它是一门优雅的科学,有时候,它要去开发和使用新的软件工具。编程与人息息相关:客户实际想解决什么问题? 解题模板双指针解题模板我们通过迭代数组来解决一些问题。通常,我们只需要一个指针进行迭代,即从数组中的第一
  目录