MySQL原理---索引

241 阅读1分钟

一、索引(index)

索引在MySQL中也叫做“键”,是存储引擎用于快速找到记录的一种数据结构。索引优化应该是对查询性能优化最有效的手段了,索引能够轻易将查询性能提高好几个数量级。


注意:

对需要被经常性、频繁查询的数据创建索引 表中数据很少时,不要创建索引


分类:

1.普通索引index :加速查找
2.唯一索引
    主键索引:primary key :加速查找+约束(不为空且唯一)
    唯一索引:unique:加速查找+约束 (唯一)
3.联合索引
    -primary key(id,name):联合主键索引
    -unique(id,name):联合唯一索引
    -index(id,name):联合普通索引
4.全文索引fulltext :用于搜索很长一篇文章的时候,效果最好。
5.空间索引spatial :了解就好,几乎不用

缺点:

1. 数据增删改效率低
2. 索引会占空间

实操:

设置普通索引:

CREATE INDEX balance_index ON wallet(balance);

创建唯一索引:

CREATE UNIQUE INDEX score_index ON t2(score1);

更新索引:

ALTER TABLE balance ADD INDEX balance_index(balance);

删除索引:

DROP INDEX balance_index ON wallet;

扩展: MySQL索引原理以及查询优化