MySQL 数据库引擎
MyISAM
与 InnoDB
索引
采用的索引都是
B+
树,但是出现了非聚集索引与聚集索引的差别存储结构
- 因为
InnoDB
中索引数据文件本身就是索引文件,所以其B+
树中存储的不仅仅是索引文件,还有该条数据的内容 - 数据文件:
MYSQL
中建立任何一张数据表,在其数据目录对应的数据库目录下都有对应表的.frm
文件MyISAM
数据库.MYD
文件:即MY Data
,表数据文件.MYI
文件:即MY Index
,索引文件.log
文件:日志文件
InnoDB
采用表空间(tablespace)
:.ibd
文件 : 存放用户数据库表数据和索引ibdata1
系统表空间文件
- 存储记录:
blob,text,varchar(5120)
这样的大字段,innodb
只会存放前768
字节在数据页中- 其余更多的内容存储在额外的
page
里 - 最大行大小限制为
65,535
字节,也就是最多8K
- 相对于非聚集索引,因为涉及到对聚集索引的使用,所以要在
8K
基础上再减半,同时还会存在预留等情况
- 因为
锁
- 行级锁 :
Record Lock
- 间隙锁 :
Gap Lock
- 两者相加 :
Next Lock
事务
- 支持事务
日志
- 由保证事务特性而支持的日志文件
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
上一篇: MySQL 数据库事务
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论