【MySQL】存储引擎

1、InnoDB引擎

具备外键支持的事务存储引擎

  • InnoDB是MySQL的默认事务型引擎,被设计用来处理大量短期事务。可以确保事务的完整提交和回滚

  • 在有更新和删除操作时,优先选择InnoDB

  • InnoDB是为处理巨大数据量的最大性能设计的。

  • 数据文件结构:

    • 表名.frm 存储表结构

    • 表名.idb 存储索引和数据

2、MyISAM引擎

主要的非事务处理存储引擎

  • 不支持事务、行级锁、外键,且崩溃后无法安全恢复
  • 访问的速度快,对事务完整性没有要求
  • 数据文件结构:
    • 表名.frm存储表结构
    • 表名.MYD存储数据
    • 表名.MYI存储索引

3、对比

  • 对比MyISAM,InnoDB写的处理效率差一点,占用更多的磁盘空间来保存数据和索引。
  • MyISAM只缓存索引,不缓存真实数据。InnoDB不仅缓存索引还缓存真实数据,对内存要求较高
相关推荐
RestCloud1 天前
SQL Server到Hive:批处理ETL性能提升30%的实战经验
数据库·api
RestCloud1 天前
为什么说零代码 ETL 是未来趋势?
数据库·api
ClouGence1 天前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库
Java水解1 天前
Mysql查看执行计划、explain关键字详解(超详细)
后端·mysql
知其然亦知其所以然2 天前
MySQL 社招必考题:如何优化查询过程中的数据访问?
后端·mysql·面试
DemonAvenger2 天前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
程序新视界2 天前
如何在MySQL中创建聚集索引?
mysql
AAA修煤气灶刘哥2 天前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql
程序新视界2 天前
学习MySQL绕不开的两个基础概念:聚集索引与非聚集索引
mysql
RestCloud2 天前
跨境数据传输:ETL如何处理时区与日期格式差异
mysql·api