MyISAM 和 InnoDB 的区别
2024-09-25
80
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 支持事务和行级锁
更新于:3个月前赞一波!3
相关文章
- 【说站】python copy()和直接赋值的区别
- 【说站】python可变数据类型和不可变数据类型的区别
- 【说站】mysql中B+Tree和B-Tree的区别
- 【说站】java循环和递归的区别
- 【说站】Python pandas和numpy的区别
- 【说站】java yield()和sleep()的区别
- 【说站】java start()和run()的区别
- 【说站】java sleep()和wait()的区别
- 【说站】Java守护线程和用户线程的区别
- 【说站】mysql InnoDB存储引擎的介绍
- 【说站】python TCP和UDP协议的区别分析
- 【说站】mysql InnoDB和MyISAM的对比
- 【说站】java io和nio的区别
- 【说站】java懒汉和饿汉模式的区别
- 【说站】java抽象类和接口的区别探究
- 【说站】java中不同变量的区别
- 【说站】java throw和throws的区别
- 【说站】java异步和同步的区别
- 【说站】php7与php5的区别
- 【说站】java集合和数组的区别
文章评论
评论问答