MySQL存储引擎详解:InnoDB与MyISAM的优缺点及应用场景
创作时间:
作者:
@小白创作中心
MySQL存储引擎详解:InnoDB与MyISAM的优缺点及应用场景
引用
1
来源
1.
https://cloud.tencent.com/developer/article/1348085
在数据库开发和运维过程中,选择合适的存储引擎对系统的性能和稳定性至关重要。本文将详细介绍MySQL中常见的几种存储引擎,重点对比InnoDB和MyISAM两种存储引擎的优缺点和应用场景,帮助读者更好地理解如何根据实际需求选择合适的存储引擎。
经常面试都会问到MYSQL有哪些存储引擎,以及各自的优缺点。今天主要分享常见的存储引擎:MyISAM、InnoDB、MERGE、MEMORY(HEAP)、BDB(BerkeleyDB)等,以及最常用的MyISAM与InnoDB两个引擎 ,文章尾部有两者的详细比较。
MySQL常用存储引擎介绍
1. InnoDB 引擎(MySQL5.5以后默认使用)
MySQL 5.5 及以后版本中的默认存储引擎,他的优点如下:
- 灾难恢复性好
- 支持事务
- 使用行级锁
- 支持外键关联
- 支持热备份
对于InnoDB引擎中的表,其数据的物理组织形式是簇表(Cluster Table),主键索引和数据是在一起的,数据按主键的顺序物理分布
实现了缓冲管理,不仅能缓冲索引也能缓冲数据,并且会自动创建散列索引以加快数据的获取
支持热备份
2. MyISAM引擎
特性如下:
- 不支持事务
- 使用表级锁,并发性差
- 主机宕机后,MyISAM表易损坏,灾难恢复性不佳
- 可以配合锁,实现操作系统下的复制备份、迁移
- 只缓存索引,数据的缓存是利用操作系统缓冲区来实现的。可能引发过多的系统调用且效率不佳
- 数据紧凑存储,因此可获得更小的索引和更快的全表扫描性能
3. MEMORY 存储引擎
提供内存表,也不支持事务和外键。显著提高访问数据的速度,可用于缓存会频繁访问的、可以重构的数据、计算结果、统计值、中间结果。
缺点如下:
- 使用表级锁,虽然内存访问快,但如果频繁的读写,表级锁会成为瓶颈
- 只支持固定大小的行。Varchar类型的字段会存储为固定长度的Char类型,浪费空间
- 不支持TEXT、BLOB字段。当有些查询需要使用到临时表(使用的也是MEMORY存储引擎)时,如果表中有TEXT、BLOB字段,那么会转换为基于磁盘的MyISAM表,严重降低性能
- 由于内存资源成本昂贵,一般不建议设置过大的内存表,如果内存表满了,可通过清除数据或调整内存表参数来避免报错
- 服务器重启后数据会丢失,复制维护时需要小心
MySQL存储引擎MyISAM与InnoDB如何选择
两种存储引擎的大致区别表现在:
- InnoDB支持事务,MyISAM不支持,这一点是非常之重要。事务是一种高级的处理方式,如在一些列增删改中只要哪个出错还可以回滚还原,而MyISAM就不可以了。
- MyISAM适合查询以及插入为主的应用,InnoDB适合频繁修改以及涉及到安全性较高的应用
- InnoDB支持外键,MyISAM不支持
- 从MySQL5.5.5以后,InnoDB是默认引擎
- InnoDB不支持FULLTEXT类型的索引
- InnoDB中不保存表的行数,如select count() from table时,InnoDB需要扫描一遍整个表来计算有多少行,但是MyISAM只要简单的读出保存好的行数即可。注意的是,当count()语句包含where条件时MyISAM也需要扫描整个表。
- 对于自增长的字段,InnoDB中必须包含只有该字段的索引,但是在MyISAM表中可以和其他字段一起建立联合索引。
- 清空整个表时,InnoDB是一行一行的删除,效率非常慢。MyISAM则会重建表。
- InnoDB支持行锁(某些情况下还是锁整表,如 update table set a=1 where user like '%lee%'
有人说MYISAM只能用于小型应用,其实这只是一种偏见。如果数据量比较大,这是需要通过升级架构来解决,比如分表分库,读写分离,而不是单纯地依赖存储引擎。
现在一般都是选用InnoDB了,主要是MyISAM的全表锁,读写串行问题,并发效率锁表,效率低,MyISAM对于读写密集型应用一般是不会去选用的。
总之:
- MyISAM类型不支持事务处理等高级处理,而InnoDB类型支持。
- MyISAM类型的表强调的是性能,其执行速度比InnoDB类型更快,但是不提供事务支持,而InnoDB提供事务支持已经外部键等高级数据库功能。
热门推荐
镀镍光亮剂成分揭秘:黑科技还是智商税?
满族皇家玉饰遇上藏族宝石:两种民族文化的传承与创新
如何优雅地吐槽姐夫?
五谷杂粮喂狗狗,你踩过哪些坑?
学龄前儿童玩电子游戏超30分钟,近视风险大增
瑞丽莫里热带雨林:扎朵瀑布与植物化石共生的生态秘境
忻州古城:周末休闲打卡圣地
职场中的“懒蚂蚁”:关键时刻的隐形英雄
青森睡魔节:300年传承的夏日狂欢
北京小程序开发:企业如何应对数据合规挑战
创新生物质转化工艺,新型饲料添加剂助力蛋鸡养殖降本增效
新方法唤醒大脑休眠干细胞,为治疗神经发育障碍提供潜在策略
正向心理学揭秘幸福密码
打造无虫厨房:樟脑丸使用及全方位防虫方案
抗疫纪念章:收藏价值与文化意义
合肥岱山湖:8000亩湖景胜地,自然人文两相宜
酸梅低卡美食晒图大赛:创意料理与摄影技巧全攻略
苹果和谷歌都在用这种隔断装修,你家也可以试试!
官方推荐:廉泉穴揪痧疗法可有效缓解嗓子肿胀
春运期间北京南站至山东多城票价优惠,普速最低2折
冬季宅家必备:无需登录的横版赛车游戏推荐
刘亦菲缺席微博之夜引热议:社会变迁下的美女标准
颜海英解读古埃及文明:尼罗河畔的太阳崇拜与永生信仰
北京故宫游:坤宁宫必打卡
妇产科专家详解:胎儿入盆时间、表现及注意事项
中缅边境“一寨两国”:一个村寨里的两国文化交融
从热力学看AI能耗:计算效率提升的科学难题
超声检查成肿瘤术后复查首选,专家解析其四大优势
2494公里自驾之旅:出发前必做的8大项车辆检查
四川江油肥肠:千年传承,年销百万的美食传奇