尚学堂给同学们带来全新的Java300集课程啦!java零基础小白自学Java必备优质教程_手把手图解学习Java,让学习成为一种享受_哔哩哔哩_bilibili
前言
不必了解 MySQL®
和Percona Server for MySQL
如何构建索引。 但是,如果您了解处理过程,那么当您想为数据插入保留适当数量的空间时,它可能会有所帮助。 从 MySQL 5.7 开始,开发人员改变了他们为 InnoDB 构建二级索引的方式,应用了自底向上而不是早期版本中使用的自顶向下方法。 在这篇文章中,我将通过一个示例来说明如何构建 InnoDB
索引。 最后,我将解释如何使用这种理解来为 innodb_fill_factor
设置一个合适的值。
索引构建过程
要在现有数据的表上建立索引,在 InnoDB 中有以下阶段:
- 读取阶段(从聚集索引读取并构建二级索引条目)
- 合并排序阶段
- 插入阶段(将排序后的记录插入二级索引)
在 5.6 版本之前,MySQL 通过一次插入一条记录来构建二级索引。这是一种“自上而下”的方法。对插入位置的搜索从根(顶部)开始,并到达相应的叶页(向下)。记录插入到光标指向的叶页上。在查找插