美文网首页
Mysql四种引擎的区别

Mysql四种引擎的区别

作者: 丿九尾狸猫 | 来源:发表于2018-07-11 16:11 被阅读11次

MySQL常用的四种引擎的介绍
(1):MyISAM存储引擎:不支持事务、也不支持外键,优势是访问速度快,对事务完整性没有 要求或者以select,insert为主的应用基本上可以用这个引擎来创建表
支持3种不同的存储格式,分别是:静态表;动态表;压缩表
静态表:表中的字段都是非变长字段,这样每个记录都是固定长度的,优点存储非常迅速,容易缓存,出现故障容易恢复;缺点是占用的空间通常比动态表多(因为存储时会按照列的宽度定义补足空格)ps:在取数据的时候,默认会把字段后面的空格去掉,如果不注意会把数据本身带的空格也会忽略。
动态表:记录不是固定长度的,这样存储的优点是占用的空间相对较少;缺点:频繁的更新、删除数据容易产生碎片,需要定期执行OPTIMIZE TABLE或者myisamchk-r命令来改善性能
压缩表:因为每个记录是被单独压缩的,所以只有非常小的访问开支
(2)InnoDB存储引擎*
该存储引擎提供了具有提交、回滚和崩溃恢复能力的事务安全。但是对比MyISAM引擎,写的处理效率会差一些,并且会占用更多的磁盘空间以保留数据和索引。
InnoDB存储引擎的特点:支持自动增长列,支持外键约束
(3):MEMORY存储引擎
Memory存储引擎使用存在于内存中的内容来创建表。每个memory表只实际对应一个磁盘文件,格式是.frm。memory类型的表访问非常的快,因为它的数据是放在内存中的,并且默认使用HASH索引,但是一旦服务关闭,表中的数据就会丢失掉。
MEMORY存储引擎的表可以选择使用BTREE索引或者HASH索引,两种不同类型的索引有其不同的使用范围
Hash索引优点:
Hash 索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree 索引需要从根节点到枝节点,最后才能访问到页节点这样多次的IO访问,所以 Hash 索引的查询效率要远高于 B-Tree 索引。
Hash索引缺点: 那么不精确查找呢,也很明显,因为hash算法是基于等值计算的,所以对于“like”等范围查找hash索引无效,不支持;
Memory类型的存储引擎主要用于哪些内容变化不频繁的代码表,或者作为统计操作的中间结果表,便于高效地对中间结果进行分析并得到最终的统计结果,。对存储引擎为memory的表进行更新操作要谨慎,因为数据并没有实际写入到磁盘中,所以一定要对下次重新启动服务后如何获得这些修改后的数据有所考虑。
(4)MERGE存储引擎
Merge存储引擎是一组MyISAM表的组合,这些MyISAM表必须结构完全相同,merge表本身并没有数据,对merge类型的表可以进行查询,更新,删除操作,这些操作实际上是对内部的MyISAM表进行的。

相关文章

  • (夜食)MySql四种引擎的区别

    二,MySQL引擎的区别 MySQL有四种引擎:ISAM , MyISAM,HEAP,InnoDBISAM :IS...

  • Mysql四种引擎的区别

    MySQL常用的四种引擎的介绍(1):MyISAM存储引擎:不支持事务、也不支持外键,优势是访问速度快,对事务完整...

  • MySql高级之常见的Join查询(一)

    MySql的存储引擎介绍 : 常用的MySql存储引擎只有两个:MyISAM以及InnoDB。 两个存储引擎的区别...

  • mysql修改默认引擎为INNODB

    0.为何修改 MySQL5.5之前mysql 默认使用 MyISAM引擎 MyISAM引擎与INNODB的区别In...

  • 字节网友面经

    MySQL 1.MySQL有哪些存储引擎? innodb 和 myisname 2.引擎之间的区别 3.MySQ...

  • MySql 中 Innodb 与 MyISAM 两种存储引擎对比

    两种存储引擎都是 Mysql 常用的,从 5.7之后 Mysql 默认把存储引擎改为 Innodb 一 、区别:...

  • MySQL存储引擎

    mysql的存储引擎是MySQL体系架构中的重要组成部分,也是MySQL体系结构的核心,插件式的存储引擎更是它区别...

  • 2019-04-24

    mysql常见的数据库引擎和区别: MyISAM:默认的MySQL插件式存储引擎,它是在Web、数据仓储和其他应用...

  • MySql数据库学习笔记

    MySql分层结构: 1.MySQL中InnoDB与MyISAM的区别: a.InnoDB引擎是MySql的默认引...

  • mysql

    1、Mysql数据库引擎innodb myisam 区别,两种引擎的索引区别,为什么myisam查询快? 2、My...

网友评论

      本文标题:Mysql四种引擎的区别

      本文链接:https://www.haomeiwen.com/subject/tayldftx.html