选择 InnoDB 或 MyISAM 时应比较哪些存储引擎能力
简答题中等651 次浏览
参考答案与解析
# 核心结论
现代通用业务系统通常应优先选择InnoDB,因为它提供事务、行级并发控制、多版本并发控制、崩溃恢复和外键等能力,适合持续读写且要求数据可靠的场景。MyISAM不提供与之等价的事务、行锁和崩溃恢复能力,写入主要受表级锁约束,通常只适用于明确可接受这些限制的遗留、只读或可重建数据。选型不能依据“某引擎查询更快”之类脱离版本、缓存和工作负载的结论,而应比较一致性、并发、恢复、索引组织、备份和运维成本。
# 底层机制
InnoDB通常按聚簇索引组织表数据,主键索引的叶子节点保存完整行。二级索引叶子节点通常保存二级索引键和主键值,查询其他列时可能需要再访问聚簇索引。因此主键越宽,多个二级索引的空间开销通常越
