Bootstrap

MySQL架构优化

一、MySQL存储引擎选择

1、常用存储引擎对比

存储引擎的主要作用是进行数据的存取和检索,也是真正执行 SQL 语句的组件。

1)MyISAM 和 InnoDB 的主要区别 

MyISAM:

  • 5.5 版本之前的默认引擎。
  • 支持全文索引、压缩、空间函数等。
  • 不支持事务和行级锁,所以一般用于读多写少的场景。
  • 不支持外键。
  • 索引和数据是分开存储的。

InnoDB:

  • 5.5 版本之后的默认引擎。
  • 支持事务、支持外键。
  • 通过 MVCC 来支持高并发。
  • 基于聚簇索引建立的,索引和数据存储在一起。

2、InnoDB 特性

InnoDB 存储引擎(Storage Engine)是 MySQL 默认之选,所以非常典型。

InnoDB 的整体架构分为两个部分:内存架构和磁盘架构,如图:

;