加载中...

MyISAM 是 MySQL 早期的默认存储引擎,由 MySQL 创始人 Michael Widenius 基于更早的 ISAM(索引顺序访问方法)改进而来,在 MySQL 5.5 之前一直是默认引擎。
MyISAM 不支持事务和外键,使用表级锁,写操作会锁定整张表。每张表由三个文件组成:表结构定义、数据文件(.MYD)与索引文件(.MYI),索引与数据分离,属于非聚簇索引组织。它维护精确的行数计数,COUNT(*) 无条件查询极快,并较早支持全文索引。
表级锁导致读写并发差;崩溃后表容易损坏,需要用 myisamchk 修复;缺乏事务使其不适合涉及资金等一致性敏感场景。
随着 InnoDB 成为默认引擎并补齐全文索引等能力,MyISAM 已基本退出生产环境,MySQL 8.0 中系统表也全部迁移到 InnoDB。它主要作为数据库发展史上的一个重要阶段被记住。

登录 后参与讨论
暂无讨论,来发表第一条评论吧