【数据库】1.mysql相关知识(五)
原创
©著作权归作者所有:来自51CTO博客作者wx5c04c8a88fd20的原创作品,请联系作者获取转载授权,否则将追究法律责任
索引
1. 添加索引
- 语法1:ALTER TABLE 表名 ADD index(列名)
- 语法2:CREATE INDEX 索引名 ON 表名(列名)
- 举例:
ALTER TABLE user ADD index(user_name);
2. 查看索引
show index from user;
3. 删除索引
- 语法1:alter table 表名 drop index 索引名
- 语法2:drop index 索引名 on 表名
alter table user drop index user
4. 慢查询
- 就是查看下查询语句的详情
- 语法:在查询语句前加关键字 EXPLAIN
- 返回一个表格,有如下列:
- Type:类型,是否使用了索引还是全局扫描,const,eg_reg,ref,range,index,ALL
- Key:实际使用的索引是哪个字段
- Ken_len:真正使用了哪些索引,不为NULL的就是真实使用的索引
- Ref:显示了哪些字段或者常量被用来和key配合从表中查询记录出来
- Rows:显示了MySQL认为在查询中应该检索的记录数
- Extra:显示了查询中MySQL的附加信息,关心Using filesot和Using temporary,性能杀手,性能会很差
5. 索引创建的原则
- 频繁作为查询条件的字段应该创建索引
- 唯一性太差的字段不适合单独创建索引,即使频繁作为查询条件
- 更新频繁的字段不适合创建索引
- 不会出现在where子句中的额字段不该创建索引