💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。
- 持续学习,不断总结,共同进步,活到老学到老
- 人生的本质是追寻自我的提升,包括思想、能力、意志等等。
- 直面变化,找到背后更基础的东西,更基础的东西是用户的需求。
- 我们的成功是我们的现在和将来决定的。今天和明天已经由昨天决定,你还可以决定后天。
非常期待和您一起在这个小小的网络世界里共同探索、学习和成长。💝💝💝 ✨✨ 欢迎订阅本专栏 ✨✨
1.innodb 逻辑存储结构
从 InnoDB 存储引擎的逻辑存储结构看,所有数据都被逻辑地存放在一个空间中,称之为表空间(tablespace)
。表空间又由段(segment)、区(extent)、页(page)
组成。页在一些文档中有时也称为块(block),InnoDB 存储引擎的逻辑存储结构大致如图所示。
2.共享表空间
在默认情况下 InnoDB 存储引擎有一个共享表空间 ibdata1
,即所有数据都存放在这个表空间内。如果用户启用了参数 innodb_file_per_table
,则每张表内的数据可以单独放到一个表空间内。
如果启用了 innodb_file_per_table
的参数,需要注意的是每张表的表空间内存放的只是数据
、索引和插入缓冲 Bitmap 页,其他类的数据,如回滚(undo)信息,插入缓冲索引页、系统事务信息,二次写缓冲(Double write buffer)等还是存放在原来的共享表空间内。这同时也说明了另一个问题:即使在启用了参数 innodb_fle_per_table
之后,共享表空间还是会不断地增加其大小。
3.innodb 中的段
表空间是由各个段组成的,常见的段有数据段、索引段、回滚段
等。InnoDB 存储引擎表是索引组织的(index organized),因此数据即索引
,索引即数据。
- 数据段即为 B+树的叶子节点(Leaf node segment)
- 索引段即为 B+树的非索引节点(Non-leaf node segment)
觉得有用的话点个赞
👍🏻
呗。
❤️❤️❤️本人水平有限,如有纰漏,欢迎各位大佬评论批评指正!😄😄😄💘💘💘如果觉得这篇文对你有帮助的话,也请给个点赞、收藏下吧,非常感谢!👍 👍 👍
🔥🔥🔥Stay Hungry Stay Foolish 道阻且长,行则将至,让我们一起加油吧!🌙🌙🌙