MySQL索引详解:MyISAM与InnoDB的B+树区别
MySQL中的MyISAM与InnoDB存储引擎在索引实现上都采用了B+树结构,那么它们之间具体有哪些区别呢?今天我们就来详细聊聊这个话题。
首先,我们创建一张示例表,SQL语句如下:
CREATE TABLE `t_user` (`id` bigint(20) NOT NULL AUTO_INCREMENT,`name` varchar(16) DEFAULT NULL,`email` varchar(32) DEFAULT NULL,`phone` varchar(11) DEFAULT NULL, PRIMARY KEY (`id`),KEY `k_name` (`name`)) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1
除了主键id字段外,我们还在name字段上添加了一个普通索引,并插入了6条测试数据:
图片
1.MyISAM
MyISAM将索引文件与数据文件分开存储,索引文件仅保存数据记录所在的数据页地址。
1.1 主键索引
MyISAM存储引擎使用B+树索引结构,其非叶子节点存储索引键值,而叶子节点则保存了主键值及对应的数据记录地址。由于叶子节点不直接存储实际数据,这种索引方式被称为“非聚集索引”。
图片
1.2 非主键索引
主键索引与非主键索引在结构上完全一致,唯一的区别在于非主键索引允许出现重复的键值。下面我们来看一下k_name这个索引的具体结构:
图片
2.InnoDB
与MyISAM不同,InnoDB采用B+树组织成聚集索引,其主键索引的叶子节点保存了完整的数据记录。因此InnoDB的数据文件本身即为索引文件。
2.1 主键索引
InnoDB主键索引的键值为主键值,而数据域则保存了完整的数据行记录。如下图所示:
图片
2.2 非主键索引
InnoDB的普通索引键值保存索引字段值,数据域则存储对应记录的主键值,查询时需要先通过普通索引找到主键,再根据主键回表查询完整记录。如下图所示:
图片
3.总结
虽然MyISAM和InnoDB存储引擎都使用B+树索引,但二者的索引结构存在本质区别:一种是聚集索引,另一种则是非聚集索引。
游乐网为非赢利性网站,所展示的游戏/软件/文章内容均来自于互联网或第三方用户上传分享,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系youleyoucom@outlook.com。
同类文章
小米米家无线吸尘器4 Max发布 15万转电机续航100天免倒尘
米家无线吸尘器4Max搭载15万转电机,吸力强劲持久。配备全自动集尘基站,可实现约100天免手动倒尘。地刷具备显尘与贴边设计,并防毛发缠绕。节能模式下续航达90分钟,支持灰尘感应自动调吸力。整机配备多重过滤系统,并随附多款刷头以适应不同清洁场景。
知名相机App团队解散 9.9元写真爆火后陷困境
曾火爆一时的AI相机应用妙鸭相机近期传出团队解散消息,项目已转为低成本运营。该应用凭借AI数字分身和低价写真功能迅速走红,但随着多模态AI技术普及,类似功能已成标配,面临巨大竞争压力。其创始人已离职转向新领域,妙鸭相机从爆红到沉寂,折射出AI应用市场的快速变迁。
孙东旭离职后直播卖书 两小时销售额登顶榜首
2026年5月,美国更新实体清单,精准制裁中国人工智能算力、半导体封装等关键领域企业,意图扼制上游技术迭代。此举暴露产业链薄弱环节,倒逼国内聚焦核心技术攻关,并可能促使全球科技合作网络重组,推动基础研究与自主创新。科技竞争已深入基础技术与生态层面。
三星电子工会暂缓罢工 劳资协议投票在即缓解供应链压力
三星电子工会暂缓罢工,将就劳资协议进行内部投票,后续行动取决于结果。此前罢工风险曾引发市场担忧,恐冲击全球存储芯片供应链。当前AI热潮推高HBM、DRAM等需求,价格持续上涨,行业持续看好AI驱动的需求前景。
小鹏GX售价26.98万起 重塑中大型SUV市场格局
小鹏GX以26 98万元起售,较预售价大幅降低。新车集成前沿技术,具备3000TOPS算力,支持L4级自动驾驶,并采用原生AI线控底盘提升操控安全。安全方面引入多重冗余设计,配备丰富气囊与智能防护系统。车内提供零重力座椅、大空间及智能调光玻璃,兼顾舒适与科技。此次定价展现小鹏进军高端的决心。
- 日榜
- 周榜
- 月榜
1
2
3
4
5
6
7
8
9
10
相关攻略
2015-03-10 11:25
2015-03-10 11:05
2021-08-04 13:30
2015-03-10 11:22
2015-03-10 12:39
2022-05-16 18:57
2025-05-23 13:43
2025-05-23 14:01
热门教程
- 游戏攻略
- 安卓教程
- 苹果教程
- 电脑教程
热门话题

