1. InnoDB支持事务,MyISAM不支持,对于InnoDB每一条SQL语言都默认封装成事务,自动提交,这样会影响速度,所以最好把多条SQL语言放在begin和commit之间,组成一个事务;

  2. InnoDB支持外键,而MyISAM不支持。对一个包含外键的InnoDB表转为MYISAM会失败;

  3. InnoDB是聚集索引,使用B+Tree作为索引结构,数据文件是和(主键)索引绑在一起的(表数据文件本身就是按B+Tree组织的一个索引结构),必须要有主键,通过主键索引效率很高。但是辅助索引需要两次查询,先查询到主键,然后再通过主键查询到数据。因此,主键不应该过大,因为主键太大,其他索引也都会很大。

  4. InnoDB不保存表的具体行数,执行select count(*) from table时需要全表扫描。而MyISAM用一个变量保存了整个表的行数,执行上述语句时只需要读出该变量即可,速度很快(注意不能加有任何WHERE条件);

  5. Innodb不支持全文索引,而MyISAM支持全文索引,在涉及全文索引领域的查询效率上MyISAM速度更快高;PS:5.7以后的InnoDB支持全文索引了

  6. MyISAM表格可以被压缩后进行查询操作

  7. InnoDB支持表、行(默认)级锁,而MyISAM支持表级锁

  8. InnoDB表必须有主键(用户没有指定的话会自己找或生产一个主键),而Myisam可以没有

  9. Innodb存储文件有frm、ibd,而Myisam是frm、MYD、MYI

     Innodb:frm是表定义文件,ibd是数据文件Myisam:frm是表定义文件,myd是数据文件,myi是索引文件
    

详细:
https://blog.csdn.net/qq_35642036/article/details/82820178

MyISAM与InnoDB 的区别相关推荐

  1. Mysql存储引擎详解(MyISAM与InnoDB的区别)

    Mysql存储引擎详解(MyISAM与InnoDB的区别) 存储引擎     MySQL中的数据用各种不同的技术存储在文件(或者内存)中.这些技术中的每一种技术都使用不同的存储机制.索引技巧.锁定水平 ...

  2. MySQL存储引擎MyISAM和InnoDB的区别

    需要完整版PDF面试文档可扫描左侧二维码拿! 你都工作3年了,怎么还不知道MyISAM和InnoDB有什么区别?一位粉丝被面试官这样一个问题.当时,这位粉丝直接回复"不知道",这位 ...

  3. 【myISAM和innoDB】mySql的引擎myisam和innodb的区别/mysiam(mysql插入速度优化)

    目录 Myisam 和Innodb 特点和擅长 Myisam 和Innodb 数据存储区别 Myisam引擎(非聚集索引--叶子节点存储数据地址的指针) Innodb引擎(聚集索引---叶子节点的da ...

  4. MyISAM和InnoDB的区别

    MyISAM和InnoDB的区别 mysql5.5版本后将InnoDB作为默认的存储引擎,之前都是用MyISAM,两种的区别在于以下五点: 1.数据的存储结构不同 MyISAM有三个文件: .frm: ...

  5. MyISAM 和 InnoDB 的区别

    MyISAM 和 InnoDB 的区别 MySQL 5.5 之前,MyISAM 引擎是 MySQL 的默认存储引擎,可谓是风光一时.虽然,MyISAM 的性能还行,各种特性也还不错(比如全文索引.压缩 ...

  6. mysql and常用引擎_MySQL两大常用存储引擎MyISAM,InnoDB的区别

    本文主要整理了MySQL两大常用的存储引擎MyISAM,InnoDB的六大常见区别,来源于Mysql手册以及互联网的资料 InnoDB与Myisam的六大区别 MyISAM InnoDB 构 成上的区 ...

  7. MySQL中MyISAM 与innoDB的区别(转)

    InnoDB 和MyISAM是在使用MySQL最常用的两个表类型,各有优缺点,视具体应用而定.基本的差别为:MyISAM类型不支持事务处理等高级处理,而 InnoDB类型支持.MyISAM类型的表强调 ...

  8. 引擎讲解2--主要是MyISAM和InnoDB的区别

    文章转自:http://menglimengwai.iteye.com/blog/464667 MySQL常用的存储引擎为MyISAM.InnoDB.MEMORY.MERGE,其中InnoDB提供事务 ...

  9. mysql数据库表中的类型_MySQL数据库中表类型MyISAM与InnoDB的区别

    MyISAM 和 InnoDB 讲解 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应用而定.基本的差别为:MyISAM类型不支持事务处理等高级处 ...

  10. MYSQL 的静态表和动态表的区别, MYISAM 和 INNODB 的区别

    MyISAM是MySQL的默认数据库引擎(5.5版之前),由早期的ISAM(Indexed Sequential Access Method:有索引的顺序访问方法)所改良.虽然性能极佳,但却有一个缺点 ...

最新文章

  1. 如何设置python程序定时执行?
  2. oracle---函数(trunc,nvl,nvl2)
  3. 机器学习线性回归算法实验报告_从零实现机器学习算法(九)线性回归
  4. 下拉框——把一个select框中选中内容移到另一个select框中遇到的问题
  5. LeetCode 2202. K 次操作后最大化顶端元素
  6. 这款堪称完美的PDF编辑器,帮你节省50%的写作时间
  7. 深入浅出VC++串口编程--基于控件
  8. 判断是否是2的N次方各方法运行速度比较
  9. 在raspbian上配置apache2/subversion/xdebug及mysql远程访问
  10. Cache之直接映射
  11. Android应用开发初印象
  12. html5表格制作教程,html怎么做表格
  13. 说说用笔记本电脑的惨痛经历
  14. 外包php技术,php外包
  15. 不低调的巨人,史玉柱
  16. 123457123457#0#-----com.cym.YuErBaiKe02--前拼后广--育儿百科
  17. 对透明表、簇表的理解
  18. 灾备联盟牵头研制《云灾备技术发展趋势与应用白皮书》
  19. 【聚类】ConsensusClusterPlus包
  20. xampp mysql 卸载_XAMPP怎么卸载

热门文章

  1. MATLAB建立传递函数的方法
  2. 认识汽车标志(组图)
  3. 国家强制性灯具安全标准GB7000.1-2015
  4. 深度学习加速:算法、编译器、体系结构与硬件设计
  5. PS学习笔记-------仿制图章工具
  6. 基于数字孪生的网联自动驾驶测试方法研究
  7. php正则过滤替换标点符号
  8. 异动调薪对于HR经办和薪资经办协调作业的要求
  9. 重装XP系统后桌面图标有蓝色阴影的恢复方法--win10专业版
  10. 听说……国产的领航辅助驾驶系统都很卷?