|
|
51CTO旗下网站
|
|
移步端
  • MySQL各族存储引擎对比总结

    存储引擎是必发娱乐登录的骨干,对于mysql来说,存储引擎是以插件的样式运行的。虽然mysql支持种类繁多的存储引擎,但是常用的就那么几种。这篇文章主要是对他进行一番总结和对待。

    笔者:Java的架构师技术栈 来源:当日第一| 2020-01-10 17:43

    存储引擎是必发娱乐登录的骨干,对于mysql来说,存储引擎是以插件的样式运行的。虽然mysql支持种类繁多的存储引擎,但是常用的就那么几种。这篇文章主要是对他进行一番总结和对待。

    一、引言

    在mysql5后,支持的存储引擎有十几个,但是常用的就那么几种,而且默认支持的也是InnoDB,既然要开展一番相比,咱们就要下不同之维度来看一下。

    咱们可以运用命令来看望当前必发娱乐登录可以支持的存储引擎有哪些。

     Mysql各族存储引擎对比总结

    在此间我们发现默认支持了9种。还是比较多之,下我们进行一番相比。

    不同之存储引擎都有各自的性状,以适应不同之急需,如表所示。为了做出选择,第一要考虑每一个存储引擎提供了哪些不同之效应。

     Mysql各族存储引擎对比总结

    在此间我们列举了部分特点并作出了比较。下我们来具体分析对比一下。

    二、存储引擎

    1、MyISAM

    采用这个存储引擎,每个MyISAM在光盘上存储成三个文件。

    (1)frm文件:存储表的概念数据

    (2)MYD文件:存放表具体记录的多寡

    (3)MYI文件:存储索引

    frm和MYI可以存放在不同之目录下。MYI文件用来存储索引,但仅保留记录所在页的指针,目录的组织是B+树结构。下这张图就是MYI文件保存的公有制:

     Mysql各族存储引擎对比总结

    副这张图得以发现,其一存储引擎通过MYI的B+树结构来查找记录页,再论证记录页查找记录。并且支持全文索引、B树索引和数量压缩。

    支持数据的项目也有三种:

    (1)静态固定长度表

    这种办法的长处在于存储速度非常快,轻而易举发生缓存,而且表发生损坏后也容易修复。缺点是占空间。这也是公认的存储格式。

    (2)动态可变长表

    优点是节约空间,但是一旦出错恢复起来比较麻烦。

    (3)调减表

    地方说到支持数据压缩,表明肯定也支持这个模式。在数量文件发生错误时候,可以运用check table工具来检查,而且还可以运用repair table工具来恢复。

    有一度重要的性状那就是不支持事务,但是这也意味着它的存储速度更快,如果你的读写操作允许有荒唐数据的话,只是追求速度,可以选择这个存储引擎。

    2、InnoDB

    InnoDB是公认的必发娱乐登录存储引擎,她的首要特征有:

    (1)可以通过自动增长列,办法是auto_increment。

    (2)支持事务。默认的工作隔离级别为可反复度,穿过MVCC(并发版本控制)来促成的。

    (3)采用的锁粒度为行级锁,可以支持更高的并发;

    (4)支持外键约束;外键约束其实降低了表的询问速度,但是增加了表之间的耦合度。

    (5)配合一些热备工具得以支持在线热备份;

    (6)在InnoDB官方生存着缓冲管理,穿过缓冲池,名将索引和数量全部内存起来,加紧查询的进度;

    (7)对于InnoDB品种的外表,他数据的物理组织形式是聚簇表。整整的多寡按照主键来组织。数量和索引放在一块,都位于B+数之叶子节点上;

    当然InnoDB的存储表和索引也有下面两种形式:

    (1)采用共享表空间存储:整整的外表和索引存放在同一个表空间中。

    (2)采用多表空间存储:表面结构放在frm文件,数量和索引放在IBD文件中。分区表的话,每个分区对应单独的IBD文件,分区表的概念可以查看我之任何文章。采用分区表的功利在于提升查询效率。

    对于InnoDB来说,比起大的性状在于支持事务。但是这是以损失效率来换取的。

    3、Memory

    名将数据存在内存,为了加强数据的走访速度,每一个表实际上和一个光盘文件关联。文件是frm。

    (1)支持的多寡类型有限制,比如:不支持TEXT和BLOB品种,对于字符串类型的多寡,只支持固定长度的排,VARCHAR会把自动存储为CHAR品种;

    (2)支持的锁粒度为表级锁。故此,在产量比较大时,表面级锁会变成MEMORY存储引擎的瓶颈;

    (3)出于数据是放置在内存中,一旦服务器出现故障,数量都会丢失;

    (4)查询的时节,如果有用到临时表,而且临时表中有BLOB,TEXT品种的字段,这就是说这个临时表就会转化为MyISAM品种的外表,性能会急剧下挫;

    (5)默认使用hash目录。

    (6)如果一个内部外部很大,会转化为光盘表。

    在此间只是送出3个广大的存储引擎。采用哪一种引擎需要灵活选择,一度必发娱乐登录中多个表可以运用不同引擎以满足各种性能和现实需要,采用方便的存储引擎,名将会增强全体必发娱乐登录的性质

    【编纂推荐】

    1. 一文看懂金融级分布式必发娱乐登录架构设计
    2. 详解MySQL必发娱乐登录累积聚合原理与用法实例分析
    3. 必发娱乐登录主从复制,读写分离,国库分表,分区讲解
    4. 必发娱乐登录分库分表后,带来的这个题目,如何解决?
    5. 必发娱乐手机版全球最受欢迎必发娱乐登录新鲜出炉,你猜中了吗?
    【义务编辑: 华轩 TEL:(010)68476606】

    点赞 0
  • MySQL  必发娱乐登录  文章
  • 分享:
    大家都在看
    猜你喜欢
  • 订阅专栏+更多

    Python使用场景实战手册

    Python使用场景实战手册

    Python使用场景实战手册
    共3章 | KaliArch

    116人口订阅学习

    一步到位玩儿透Ansible

    一步到位玩儿透Ansible

    Ansible
    共17章 | 骏马金龙1

    184人口订阅学习

    云架构师修炼手册

    云架构师修炼手册

    云架构师之必不可少技能
    共3章 | Allen在路上

    131人口订阅学习

    读 书 +更多

    最佳网管员――网络设备

    该书深入细致地介绍了用于构建网络的最重要的软件设备――成像机、玉器、安全装置和输油管线设备,涵盖了原理、数、列入、租用、计划、接口...

    订阅51CTO邮刊

    点击这里查看样刊

    订阅51CTO邮刊

    51CTO劳务号

    51CTO官微