当前位置: 首页 > news >正文

【面试题】MySQL 的存储引擎有哪些?它们之间有什么区别?

MySQL 的主要存储引擎及区别如下:

📊 主要存储引擎对比

特性 InnoDB MyISAM MEMORY ARCHIVE CSV
事务支持 ✅ 支持(ACID) ❌ 不支持 ❌ 不支持 ❌ 不支持 ❌ 不支持
锁粒度 行级锁 表级锁 表级锁 行级锁 表级锁
外键约束 ✅ 支持 ❌ 不支持 ❌ 不支持 ❌ 不支持 ❌ 不支持
MVCC ✅ 支持 ❌ 不支持 ❌ 不支持 ❌ 不支持 ❌ 不支持
缓存机制 数据+索引 仅索引 内存存储 不缓存 无缓存
全文索引 ✅(5.6+)
数据压缩 ✅(只读表) ✅ 高压缩
崩溃恢复 ✅ 强 ❌ 弱 ❌ 数据丢失
存储限制 64TB 256TB 内存限制 无限制 系统限制

🔍 详细说明

1. InnoDB(默认引擎)

  • 特点:支持事务、行级锁、外键约束,具有崩溃恢复能力
  • 存储方式:数据按主键聚簇存储,.ibd文件(表空间)
  • 适用场景:OLTP系统、需要事务保证、高并发写入
-- 创建InnoDB表
CREATE TABLE users (id INT PRIMARY KEY,name VARCHAR(50)
) ENGINE=InnoDB;

2. MyISAM

  • 特点:表级锁、不支持事务、查询速度快
  • 存储方式:三个文件:.frm(结构)、.MYD(数据)、.MYI(索引)
  • 适用场景:只读或读多写少、全文搜索、数据仓库
-- 创建MyISAM表
CREATE TABLE logs (id INT,content TEXT,FULLTEXT(content)
) ENGINE=MyISAM;

3. MEMORY(HEAP)

  • 特点:数据存储在内存中,重启后数据丢失
  • 适用场景:临时表、缓存、会话存储
-- 创建内存表
CREATE TABLE temp_session (session_id VARCHAR(32),data TEXT
) ENGINE=MEMORY;

4. ARCHIVE

  • 特点:高压缩比(10:1),只支持INSERT/SELECT
  • 适用场景:日志归档、历史数据存储
-- 创建归档表
CREATE TABLE historical_logs (log_date DATE,message TEXT
) ENGINE=ARCHIVE;

5. CSV

  • 特点:数据以CSV格式存储,可直接用文本编辑器查看
  • 适用场景:数据交换、导出导入
-- 创建CSV表
CREATE TABLE csv_data (id INT,value VARCHAR(100)
) ENGINE=CSV;

🎯 选择建议

选择InnoDB当:

  • 需要事务支持(银行、电商)
  • 高并发写入场景
  • 需要外键约束保证数据完整性
  • 需要崩溃后自动恢复

选择MyISAM当:

  • 表主要是只读的(报表、统计)
  • 需要全文索引(MySQL 5.6前)
  • 硬件资源有限,需要节省内存

选择其他引擎当:

  • MEMORY:需要极速访问的临时数据
  • ARCHIVE:大量历史数据归档存储
  • CSV:需要与外部系统交换数据

⚠️ 注意事项

  1. MySQL 8.0+默认只支持InnoDB,移除了对MyISAM的系统表使用
  2. 可以在同一数据库中混合使用不同引擎的表
  3. 更改引擎:ALTER TABLE table_name ENGINE = InnoDB;
  4. 可通过SHOW ENGINES;查看支持的引擎

最佳实践:大多数现代应用应使用InnoDB,除非有特殊需求。

http://www.jsqmd.com/news/112305/

相关文章:

  • 2025年12月钙片,氨糖钙片公司推荐:行业测评与骨骼养护选择指南 - 品牌鉴赏师
  • 2025年12月钙片,氨糖钙片公司推荐:行业测评与骨骼养护选择指南 - 品牌鉴赏师
  • nginx代理转发数据库连接
  • 2025年垃圾袋行业五大定制厂家推荐:瑞动包装科技实力怎么样 - myqiye
  • 律所小程序开发公司,法律行业合规适配+专业功能开发服务商推荐,律所小程序开发公司/教育小程序开发公司/课程小程序开发公司/硬件小程序开发公司 - 品牌2026
  • 2025年军霞家用跑步机厂家权威推荐榜单:JX-7056家用健身车/军霞椭圆机/用立式踏步机源头厂家精选 - 品牌推荐官
  • DeepSeek+豆包+Kimi降AI率指令合集!全网最全免费降ai教程+省心方案 - 殷念写论文
  • 2025年保温装饰一体板行业标杆推荐:浙江欣阳嘉茂,外墙保温装饰板、金属保温装饰板、外墙保温装饰一体板、金属保温装饰一体板、薄陶瓷保温装饰一体板、绿色节能筑就品质建筑 - 海棠依旧大
  • 2025年复合土工膜生产厂家权威推荐榜单:土工膜衬垫/土工膜防渗膜/防水土工膜源头厂家精选 - 品牌推荐官
  • 2025年最新带钢品牌测评:优质打包铁条这样选,带钢实力厂家口碑推荐榜精选国内优质品牌榜单 - 品牌推荐师
  • 【赵渝强老师】K8s Job控制器多工作队列的并行方式
  • 【赵渝强老师】使用Docker Machine远程管理Docker
  • 2025年系统门窗品牌实力口碑排行榜:门窗系统可信度高吗? - mypinpai
  • 2025年上海网站制作公司十大品牌权威榜单 - 匠子网络
  • 2025年NACHI丝杠轴承轴承服务排行榜,NACHI进口轴承优选企业推荐 - 工业品牌热点
  • docker 修改默认存储路径
  • 2025年12月癌干细胞,肿瘤干细胞,干细胞移植厂商推荐:聚焦企业综合实力与核心竞争力 - 品牌鉴赏师
  • 2025年12月国内GEO厂家实力对比分析 - 2025年品牌推荐榜
  • 【赵渝强老师】Kubernetes中的控制器
  • 【linux内核】nfs回写②
  • jupyter 解压缩zip文件
  • 2025年传动零部件电商平台TOP5排行榜,NACHI丝杠轴承推荐 - 工业品牌热点
  • 2025年自建房文化石优质厂家权威推荐榜单:民宿外墙文化石/别墅外墙文化石/漂流石系列源头厂家精选 - 品牌推荐官
  • 2025年宁波靠谱的离婚纠纷律师推荐:离婚纠纷辩护律师哪家诚信? - 工业推荐榜
  • WSL磁盘空间清理步骤
  • 2025年河北包装行业五大实力企业推荐,瑞动包装科技实力解析与未来潜力评估 - myqiye
  • 2025年12月马毛砖,柔光砖,哑光砖厂商推荐:聚焦企业综合实力与核心竞争力 - 品牌鉴赏师
  • 数据采集IO卡设计原理图:136-KC705E增强版基于FMC接口的 Kintex-7 XC7K325T PCIeX8 接口卡
  • 技术路线之争:2025年度红外与激光气体传感器领军品牌深度盘点与推荐 - 品牌推荐大师
  • 如何使用deepFace批量创建有创意的GIF图片表情包?