MySQL存储引擎InnoDB,MyISAM
1、区别:
(1)InnoDB支持事务,MyISAM不支持,对于InnoDB每一条SQL语言都默认封装成事务,自动提交,这样会影响速度,所以最好把多条SQL语句放在begin和commit之间,组成一个事务;
(2)InnoDB支持外键,而MyISAM不支持。对一个包含外键的InnoDB表转为MYISAM会失败;
(3)InnoDB是聚集索引,数据文件是和索引绑在一起的,必须要有主键,通过主键索引效率很高。但是辅助索引需要两次查询,先查询到主键,然后再通过主键查询到数据。因此,主键不应该过大,因为主键太大,其他索引也都会很大。而MyISAM是非聚集索引,数据文件和索引是分离的,索引保存的是数据文件的指针。主键索引和辅助索引是独立的。
(4)InnoDB不保存表的具体行数,执行select count(*) from table时需要全表扫描。而MyISAM用一个变量保存了整个表的行数,执行上述语句时只需要读出该变量即可,速度很快;
(5)Innodb锁的粒度更细,支持行锁,MyISAM不支持。
2、如何选择存储引擎
(1)是否要支持事务,如果要请选择innodb,如果不需要可以考虑MyISAM;
(2)如果表中绝大多数都只是读查询,可以考虑MyISAM,如果既有读写也挺频繁,请使用InnoDB;
(3)系统奔溃后,MyISAM恢复起来更困难,能否接受;
(4)数据量较大(3TB以上)时不要用MyISAM,崩溃后难以恢复。

InnoDB:数据完整性,并发性处理,擅长更新,删除。
MyISAM:高速查询及插入。擅长插入和查询。

转载于:https://www.cnblogs.com/xidian2014/p/8591877.html

MySQL存储引擎InnoDB,MyISAM相关推荐

  1. MySQL存储引擎中MyISAM和InnoDB区别

    转载自  MySQL存储引擎中MyISAM和InnoDB区别 MyISAM 和InnoDB 讲解 InnoDB和MyISAM是许多人在使用MySQL时最常用的两个表类型,这两个表类型各有优劣,视具体应 ...

  2. 常用Mysql存储引擎--InnoDB和MyISAM简单总结

    常用Mysql存储引擎--InnoDB和MyISAM简单总结 2013-04-19 10:21:52|  分类: CCST|举报|字号 订阅 MySQL服务器采用了模块化风格,各部分之间保持相对独立, ...

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

    文章目录 前言 一.MySQL 引擎 二.MyISAM和InnoDB特点 三.InnoDB和MyISAM的区别 总结 前言 面试经常会问到MySQL存储引擎的相关内容.常见的MySQL存储引擎有MyI ...

  4. mysql存储引擎InnoDB与MyISAM的区别

    mysql存储引擎InnoDB与MyISAM的区别 众所周知,mysql之前的存储引擎是MyISAM,在5.6版本之后默认的存储引擎是InnoDB,那么两个存储引擎有什么区别? 一.MyISAM 存储 ...

  5. MySQL存储引擎InnoDB、MyISAM和MEMORY介绍详解和区别

    文章目录 MySQL存储引擎InnoDB.MyISAM和MEMORY介绍详解和区别 InnoDB存储引擎 特点 操作示例 创建InnoDB表 修改表引擎为InnoDB MyISAM存储引擎 特点 操作 ...

  6. mysql dba系统学习(21)mysql存储引擎InnoDB

    mysql存储引擎InnoDB 1,主体系结构: 默认7个后台线程,4个io thread(insert buffer.log.read.write),1个master thread(优先级最高),1 ...

  7. Mysql存储引擎Innodb的读写锁、行级锁

    读写锁 Mysql存储引擎Innodb在处理并发读或者写的时候,通过两种类型的锁来解决并发问题,这两种锁通常称为共享锁和排他锁,也叫读锁和写锁. 读锁是共享的,即多个客户端可以同时读取同一资源. 写锁 ...

  8. MySQL存储引擎之Myisam和Innodb总结性梳理

    Mysql有两种常用的存储引擎:InnoDB与Myisam,下表是两种引擎的简单对比   MyISAM InnoDB 构成上的区别: 每个MyISAM在磁盘上存储成三个文件.第一个 文件的名字以表的名 ...

  9. MySQL存储引擎、MyISAM、InnoDB

    一. MySQL存储引擎MyISAM与InnoDB如何选择 MySQL有多种存储引擎,每种存储引擎有各自的优缺点,可以择优选择使用:MyISAM.InnoDB.MERGE.MEMORY(HEAP).B ...

最新文章

  1. VsCode允许JSON文件注释
  2. Browser增加下载路径选择功能
  3. Intellig idea导入项目第一次运行报错- Error running ‘Application‘: Command line is too long—— 解决方法
  4. 图片处理--连环画特效
  5. C#实体更新指定的字段
  6. 车路协同 智能路侧决策系统总体架构及应用
  7. 【最全攻略】拼多多商家自研系统接入流程
  8. Ubuntu 下启用trackPoint
  9. [linux shell]比较运算符小坑(unary operator excepted 期望的一元运算符错误)
  10. 计算机类毕业设计评语导师评语,本科生毕业设计导师评语参考
  11. 台风怎么看内存颗粒_普条居然采用南亚A-DIE HR颗粒,光威TYPEα内存条稳超3200MHZ...
  12. 杭州好玩景点攻略200
  13. String的底层分析 (学习笔记)
  14. 二进制调色器程序管理
  15. jdbc mysql api_JDBC---一种用于执行SQL的Java API
  16. 20191008_1308使用Node.js对文件进行批量重命名
  17. JAVA命名规范和Eclipse常用快捷键
  18. android有关的笔记,Android笔记:Fragment相关问题
  19. 人工智能Java SDK:基于BERT QA模型问答
  20. Nodejs中的Buffer

热门文章

  1. zabbix内存告警linux,配置zabbix当内存剩余不足10%的时候触发报警
  2. python数据表_第1关:了解python数据表操作
  3. 组合总和(可重复使用)Python解法
  4. php mysql 双条件排序,PHP-MySQL联合查询,按2个变量排序
  5. 电脑word在哪_求职必会!她是微软Office Word认证大师,想教你成为效率10倍提升的Word高手...
  6. 电子设计常用总线--QSPI
  7. 嵌入式linux开发环境 cpu,嵌入式Linux开发环境的搭建之:U-Boot移植-嵌入式系统-与非网...
  8. pysql与mysql的区别_postgresql与mysql的区别是什么
  9. mongodb存list_查询 MongoDB 子文档的 List 字段
  10. 图像处理——图像边缘检测