
| Type | 意义 |
|---|---|
| ALL | 全表扫描 |
| index | 索引全扫描 |
| range | 索引范围扫描 |
| ref | 非唯一索引扫描 |
| eq_ref | 唯一索引扫描 |
| const,system | 单表最多有一个匹配行 |
| NULL | 不用扫描表或索引 |
| 1.查询最小范围属性 |
| 2.用join on 代替子查询(因为子查询mysql会在内存里创建临时表) |
| 3.保证事务的最小颗粒度,代码中在事务开启前进行数据的转换和查询相关功能尤其是rpc调用。事务中的代码最好只有inset update delete代码。 |
| 4. 使用索引 |
| 不命中索引的情况 |
| 1) 使用or如果两个字段不是都是索引的情况 就不会命中 |
| 2) Like 以%开头 |
| 3) 索引列使用函数 |
| 4) 两个列比较 |
| 5) Not in 和not exist |
session1 执行update tb_user set level = 1 where username = "A"; 进入等待状态