Mysql引擎介绍
Mysql引擎介绍
Innodb存储引擎
支持事务,在OLTP方面支持行级锁、外键;
通过多版本并发控制MVCC来获得高并发性,并实现SQL的4种隔离级别(默认repeatable);
提供insert buffer,double write,自适应hash索引,预读;
对于表中数据的存储,innodb采用clustered。每张表的存储按照主键的顺序存放;若表没有显式定义主键,innodb会为每一行生成一个6字节的rowid,作为主键。
Myisam存储引擎
不支持事务,表锁,全文索引,对OLAP操作速度快;
存储引擎有MYD和MYI组成,myd放数据文件,myi放索引文件;
从mysql 5.0开始,默认支持256T单表数据;
对myisam存储引擎表,mysql数据库只缓存其索引文件,数据文件的缓存交由OS本身来完成,区别于使用LRU算法缓存数据的大部分数据库。
NDB存储引擎
数据全部放在内存中,主键的查速度极快,可线性提高数据库性能,高可用,高性能集群系统;
NDB存储引擎的连接操作是在mysql数据库层完成,而不是存储引擎层完成,因此复杂的连接操作需要巨大的网络开销。
Memory存储引擎
将表的数据放在内存中,如果数据库重启或崩溃,表中的数据发生丢失。适用于存储临时数据的临时表,数据仓库中的纬度表,默认使用hash索引,非B+树索引;
只支持表锁,并发性能差,不支持text和blob类型,存储变长字段varchar时,按照定长字段char方式进行,因此浪费空间。
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341