重要:隔离的四个级别以及脏读, 不可重复读, 幻读的问题
索引
- 索引就相当于目录
- 对于查询操作来说,添加索引会大大提高查询的效率
- 对于增删改操作来说,添加索引会提高增删改的开销
- 对于内存空间来说, 添加索引会增加数据库占用的内存空间
查看索引
show index from 表名;
对于没有创建索引但是含有主键, 外键以及unique约束时, 该表会自动创建一个索引
可见当前表含有主键,给id创建了一个索引
创建索引
create index 索引名 on 表名(列名);
- 对于一个表, 如果要经常根据某一列来查询数据,比如姓名, 那么就可以给姓名加一个索引
- 并不是添加了索引就一定能提高查询速度, 以姓名为例, 如果重名的人非常多, 那么即使添加了索引, 查询速度也并不会提高
- 创建索引应该在创建表的时候就创建好,或者在数据库很小的时候创建好, 否则数据库里的记录很多时,创建索引会吃掉大量的硬盘io, 在检索数据的这段时间内, 数据库无法被访问