雷达智富

首页 > 内容 > 程序笔记 > 正文

程序笔记

MyISAM 和 InnoDB 的区别

2024-09-25 24

1. 存储引擎


存储引擎其实就是如何存储数据、如何建立索引、如何查询和更新数据等技术的实现方法

2. MyISAM 和 InnoDB 的区别


这个问题在面试中被问道的频率非常高

事务和外键:MyISAM 强调的是性能,它的执行速度比 InnoDB 更快,但是不支持事务和外键功能;InnoDB 支持事务和外键等高级数据库功能

全文索引:MyISAM 支持 FULLTEXT 类型的全文索引;InnoDB 不支持全文索引,但是 InnoDB 可以使用 sphinx 插件支持全文索引,并且效果更好

表的具体行数:MyISAM 保存有表的总行数,如果使用 select count(*) from table; 会直接取出该值;InnoDB 没有保存表的总行数,如果使用 select count(*) from table; 就会遍历整个表,消耗相当大,但是在加了 where 条件后,MyISAM 和 InnoDB 的处理方式是一样的

表锁差异:MyISAM 只支持表级锁;InnoDB 支持事务和行级锁

更新于:23天前
赞一波!

文章评论

评论问答