MySQL InnoDB 和 MyISAM 有什么区别?
① 事务:InnoDB 支持事务(ACID)、MyISAM 不支持;② 锁:InnoDB 行锁+表锁,MyISAM 仅表锁;③ 外键:InnoDB 支持,MyISAM 不支持;④ 崩溃恢复:InnoDB 通过 redo log 自动恢复,MyISAM 需修复(易损坏);⑤ 存储:InnoDB 聚簇索引(数据按主键组织),MyISAM 索引与数据分离(非聚簇);⑥ 全文索引:MyISAM 原生支持,InnoDB 5.6+ 支持;⑦ 并发:InnoDB 高并发强;⑧ 压缩/空间:MyISAM 更省空间。现状:8.0 默认且推荐 InnoDB,MyISAM 仅历史/只读场景。
一起交流
分享经验,让问题更进一步
讨论,从你的观点开始
还没有回复,欢迎补充经验或分享不同的思路。