MyISAM以.frm、.MYD、.MYI文件存储,适合查询为主场景;2. InnoDB以.frm和.ibd或ibdata文件存储,支持事务和外键,适合高并发事务型应用。
MySQL中存储表的形式主要取决于存储引擎,最常见的两种表存储形式是MyISAM和InnoDB。
MyISAM 是 MySQL 早期默认的存储引擎,其表数据以以下三个文件形式存储在磁盘上:
MyISAM 存储引擎不支持事务、外键,但读取速度快,适合以查询为主的场景。
InnoDB 是目前 MySQL 默认的存储引擎,支持事务处理和外键约束。它的存储方式与 MyISAM 不同:
文件中(启用独立表空间时),或者集中存储在 ibdata 文件中。InnoDB 将数据组织成索引组织表(IOT),主键索引和数据存储在一起,提高了查询效率,尤其适合高并发、事务密集型应用。
基本上就这两种主流形式,具体使用哪种取决于业务需求和性能要求。