存储引擎简介

1、Innodb存储引擎

(1)支持事务

(2)行锁设计、支持非锁定读(即默认读不产生锁)、

(3)从5.5.8 版本、InnoDB存储引擎是默认存储引擎

(4)innodb将数据放在逻辑表空间进行管理、4.1版本后,也将每个innodb存储引擎的表单独存放为一个idb文件

(5)Innodb 使用多版本并发控制(MVCC)来获得高并发性,并实现四种隔离级别

(6)Innodb采用聚集方式存储数据、按主键顺序存放数据、若定义表时没有指定主键、会默认生成一个rowid作为主键

(7)Innodb存储引擎是最常用的存储引擎

2、MyISAM存储引擎

(1)不支持事务、锁设计

(2)支持全文索引

(3)5.5.8之前,默认存储引擎是MyISAM

(4)缓存池只缓存索引文件、不缓存数据文件

(5)MyISAM 存储表存放为MYD文件和MYI文件

(6)myisampack可用于压缩和解压myisam存储表文件、压缩后的文件只读

(7)从5.0版本之后,MyISAM默认支持单表256T的存储量

3、其他索引

NDB 、Memory 、Archive 、Federrated 、Maria 等

4、常见问题

(1)Mysql数据库知否支持全文索引

MyIsam 和 InnoDB 都支持

(2)Mysql 当表数据量超过1000万时,性能线性下降?

首先mysql是数据库、当数据量大,肯定对数据有影响、但不是线性的、通过优化配置、再多的数据量Mysql也能抗住、官方实验,单表数据量达1T、使用InnoDB存储引擎、仍能达到800次每秒的插入、更新速度

原文地址:https://www.cnblogs.com/dehigher/p/10187340.html