首页
编程随笔
Java笔记
Html/Css/Js
Android
后端笔记
服务器搭建
BUG收集
Java异常
Android异常
在线工具
Json格式化
编码/解码
Epub在线编辑
登录
发布文章
个人文章
退出登录
首页
技术教程
BUG收集
在线工具
资源下载
登录
发布文章
退出登录
搜索
当前位置:
首页
-
博客
- 正文
关闭
Mysql优化
更新时间:2022-03-02 07:14:43
阅读数:691
发布者:落幕
### 1、主键自增 自增型主键有利于插入性能的提高 自增型主键设计(int,bigint)可以降低二级索引的空间,提升二级索引的内存命中率 自增型的主键可以减小page的碎片,提升空间和内存的使用 无主键的表删除,在row模式的主从架构,会导致备库夯住 1)Innodb中的每张表都会有一个聚簇索引(数据+索引存放在一起,聚簇索引也称为聚集索引,聚类索引,簇集索引),而聚簇索引又是以物理磁盘顺序来存储的,自增主键会把数据自动向后插入,避免了插入过程中的聚簇索引排序问题。聚簇索引的排序,必然会带来大范围的数据的物理移动,这里面带来的磁盘IO性能损耗是非常大的。而如果聚集索引上的值可以改动的话,那么也会触发物理磁盘上的移动,于是就可能出现page分裂,表碎片横生。 注意:Innodb默认使用B+树作为存储结构,B+树的特点是数据都在叶子节点上,子节点存和跟节点存放着页码和主键(表中未指定主键则自动生成)