• 存储引擎
  • 索引
  • SQL优化
  • 视图/存储过程/触发器
  • InnoDB引擎
  • MySQL管理

存储引擎

image.png
MySQL的逻辑架构图

大体来说,MySQL 可以分为 Server 层和存储引擎层两部分。
Server 层包括连接器、查询缓存、分析器、优化器、执行器等,涵盖 MySQL 的大多数核心服务功能,以及所有的内置函数(如日期、时间、数学和加密函数等),所有跨存储引擎的功能都在这一层实现,比如存储过程、触发器、视图等,不同的存储引擎共用一个 Server 层。
存储引擎 层负责数据的存储和提取。其架构模式是插件式的,支持 InnoDB、MyISAM、Memory 等多个存储引擎。现在最常用的存储引擎是 InnoDB,它从 MySQL 5.5.5 版本开始成为了默认存储引擎。

image.png
查看当前数据库支持的存储引擎

存储引擎特点

特点 InnoDB MyISAM Memory
存储限制 64TB
事务安全 支持 不支持 不支持
锁机制 行锁 表锁 表锁
B+tree索引 支持 支持 支持
Hash索引 不支持 不支持 支持
全文索引 支持(5.6版本之后) 支持 -
空间使用 N/A
内存使用 中等
批量插入速度
支持外键 支持 不支持 不支持