Skip to content

Commit bc6b334

Browse files
committed
索引
1 parent ff38c3e commit bc6b334

File tree

1 file changed

+14
-1
lines changed

1 file changed

+14
-1
lines changed

MySql/04-索引.md

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,17 @@ InnoDB 使用 B+ 树
1212

1313
索引树已经覆盖了查询请求的情况,称为覆盖索引。
1414

15-
Mysql 5.6 以后有了索引下推优化
15+
Mysql 5.6 以后有了索引下推优化
16+
17+
普通索引 和 唯一索引
18+
19+
change buffer 只能用普通索引
20+
21+
change buffer 对于写了之后立即读的操作用处不大;change buffer 最适合的场景的是写多读少的场景;
22+
23+
提高性能的关键:减少随机读写
24+
25+
>对于唯一索引来说,所有的更新操作都要先判断这个操作是否违反唯一性约束。比如,要插入 (4,400) 这个记录,就要先判断现在表中是否已经存在 k=4 的记录,而这必须要将数据页读入内存才能判断。如果都已经读入到内存了,那直接更新内存会更快,就没必要使用 change buffer 了
26+
27+
### 选错索引
28+
索引的区分度 = 不重复的索引值/数据表的总记录,。区分度越高,索引查询时会让mysql在查询时过滤掉更多的行,值越接近1,区分度越高。

0 commit comments

Comments
 (0)