美文网首页
数据库引擎MyIsam与InnoDB的区别

数据库引擎MyIsam与InnoDB的区别

作者: 钧辉 | 来源:发表于2019-04-12 00:18 被阅读0次

       经常会被问到MyIsam与InnoDB的区别,以下是我自己的几点总结:

       1. 如果对整表进行count(*),由于在存储过程中,MyIsam会对表行数进行存储,从而读取较快。而InnoDB会逐行扫描,费时较多。

       2. MyIsam不支持事务,InnoDB支持事务(保持数据一致性)。

       3. MyIsam不支持外键,InnoDB支持外键。

       4. MyIsam只支持表级锁,InnoDB支持行级锁。

       5. InnoDB索引和数据是存储在一起的,而MyIsam索引和数据是分开的,索引存储的是数据的地址。

       6. MyIsam允许没有任何索引和主键的表存在。InnoDB如果没有主键或者非空唯一索引,就会生成一个6字节的主键。

       7. MyIsam中主索引和辅助索引在结构上没有任何区别,只是主索引要求key唯一,而辅助索引的key可以重复。InnoDB的辅助索引data域存储的是相应记录主键的值而不是地址,也就是说,InnoDB的所有辅助索引都引用主键作为data域。(辅助索引检索:先检索辅助索引获取主键,然后用主键到主索引中检索获得数据)

相关文章

  • MySQL面试汇总

    一、MySQL中myisam与innodb的区别,至少5点 MyISAM 是 MySQL 的默认数据库引擎(5.5...

  • mysql

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

  • mysql的引擎、innodb/Myisam 的区别

    四种引擎:Memory、MYISAM、DBD、InnoDB、Archive MyISAM与InnoDB的区别MyI...

  • mysql

    常见的储存引擎 InnoDB MyISAM MyISAM和InnoDB的区别 ①InnoDB支持事务,MyISAM...

  • mysql 50问

    简述在MySQL数据库中引擎MyISAM和InnoDB的区别?存储结构方面:MyISAM每个MyISAM在磁盘上存...

  • MySQL知识点

    InnoDB与MyISAM的区别 MysSQL 5.5及以上的版本默认使用InnoDB引擎。 InnoDB特点: ...

  • mysql修改默认引擎为INNODB

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

  • Mysql各引擎之间有什么区别

    主要 MyISAM 与 InnoDB 两个引擎,其主要区别如下:InnoDB 支持事务,MyISAM 不支持,这一...

  • mysql(七)

    MySQL存储引擎-innodb 查看存储引擎 innodb和myisam的物理区别 innodb 核心特性 MV...

  • 文章总结(6)—数据库

    InnoDB和MyISAM存储引擎的区别 InnoDB使用的是行锁,MyISAM使用的是表锁; InnoDB支持事...

网友评论

      本文标题:数据库引擎MyIsam与InnoDB的区别

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