内容简介:目前 MySQL 的数据库引擎一般使用 InnoDB 和 MyISAM,但两者存在一些差别。网上零零散散的文章看起来比较麻烦,这里以表格汇总对比二者区别。如有纰漏,还望读者在评论区指正。
目前 MySQL 的数据库引擎一般使用 InnoDB 和 MyISAM,但两者存在一些差别。网上零零散散的文章看起来比较麻烦,这里以表格汇总对比二者区别。如有纰漏,还望读者在评论区指正。
| InnoDB | MyISAM | |
|---|---|---|
| MySQL 默认引擎 | :white_check_mark: | :x: |
| 事务 | :white_check_mark: | :x: |
| 并发 |
表级锁 :white_check_mark: 行级锁 :white_check_mark:,采用 MVCC 来支持高并发,有可能死锁 |
表级锁 :white_check_mark: 行级锁 :x: |
| 外键 | :white_check_mark: | :x: |
| 在线热备份 | :white_check_mark: | :x: |
| COUNT (*) | 无 meta-data 缓存,查全表获取 | 有 meta-data 缓存,直接获取 |
| 崩溃恢复 | 通过事务日志来恢复数据库 | 损坏率高,恢复速度慢,不能安全恢复 |
| 其他 | 默认隔离级别是可重复读(REPEATABLE READ),通过多版本并发控制(MVCC)+ 间隙锁(Next-Key Locking)防止幻影读 | 设计简单,数据以紧密格式存储 |
| 索引特性 | 主索引是聚簇索引,在索引中保存了数据,从而避免直接读取磁盘,因此对查询性能有很大的提升。 | DELAY_KEY_WRITE 选项:修改后,新索引数据写入内存中的键缓冲区,清理键缓冲区或者关闭表时才写入磁盘。极大提升写入性能,但崩溃时会造成索引损坏 |
| 全文索引 |
>= MySQL 5.6.4 :white_check_mark: < MySQL 5.6.4 :x: |
:white_check_mark: 支持 BLOB 和 TEXT 的前 500 个字符索引 |
| 自有特性 |
内部优化: 1. 可预测性读加快读操作 2. 自适应哈希索引加速插入操作的插入缓冲区 |
1. 支持压缩表和空间数据索引 2.并发插入(CONCURRENT INSERT):在表有读取操作的同时,也可以往表中插入新的记录 |
以上所述就是小编给大家介绍的《InnoDB 与 MyISAM 的区别》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!
猜你喜欢:本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
程序员成长的烦恼
吴亮、周金桥、李春雷、周礼 / 华中科技大学出版社 / 2011-4 / 28.00元
还在犹豫该不该转行学编程?还在编程的道路上摸爬滚打?在追寻梦想的道路上你并不孤单,《程序员成长的烦恼》中的四位“草根”程序员也曾有过类似的困惑。看看油田焊接技术员出身的周金桥是如何成功转行当上程序员的,做过钳工、当过外贸跟单员的李春雷是如何自学编程的,打小在486计算机上学习编程的吴亮是如何一路坚持下来的,工作中屡屡受挫、频繁跳槽的周礼是如何找到出路的。 《程序员成长的烦恼》记录了他们一步一......一起来看看 《程序员成长的烦恼》 这本书的介绍吧!
HTML 压缩/解压工具
在线压缩/解压 HTML 代码
HEX CMYK 转换工具
HEX CMYK 互转工具