当前位置:数据库 > > 正文

mysql索引原理及调优(mysql高级学习之索引的优劣势及规则使用)

时间:2021-10-19 06:46:30类别:数据库

mysql索引原理及调优

mysql高级学习之索引的优劣势及规则使用

一、索引的优劣势

优点:可以快速的检索  、可以加快分组和排序

缺点: 占用储存空间、降低数据表的修改操作

二、索引的分类

主键索引 即主索引,根据主键 pk_clolum(length)建立索引,不允许重复,不允许空值
唯一索引 用来建立索引的列的值必须是唯一的,允许空值
普通索引 用表中的普通列构建的索引,没有任何限制
全文索引 用大文本对象的列构建的索引
全文索引 用大文本对象的列构建的索引;
组合索引 用多个列组合构建的索引,这多个列中的值不允许有空值。

三、使用索引的规则

1、适合建立索引的情况

2、不适合建立索引的情况

3、索引失灵的情况

四、关于索引的SQL

1、创建表的时候添加索引

  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • -- 创建表的时候添加索引
  • -- INDEX 关键词
  • -- myindex 索引的名称自己起的
  • -- (username(16))添加到哪一个字段上
  • CREATE TABLE mytable(
  •  ID INT NOT NULL,
  •  username VARCHAR(16) NOT NULL,
  •  INDEX myindex (username(16))
  • );
  • 2、创建表过后添加索引

  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • -- 添加索引
  • -- myindex索引的名字(自己定义)
  • -- mytable 表的名字
  • CREATE INDEX myindex ON mytable(username(16));
  • 或者
  • ALTER TABLE mytable ADD INDEX myindex(username);
  • 3 查看索引

  •  
  • 1
  • 2
  • -- mytable 表的名字
  •  show index FROM mytable;
  • 4、删除索引

  •  
  • 1
  • 2
  • 3
  • 4
  • 5
  • -- myindex索引的名字(自己定义)
  • -- mytable 表的名字
  • DROP INDEX myindex ON mytable;
  • 或者
  • ALTER TABLE mytable DROP INDEX myindex;
  • 总结

    到此这篇关于mysql高级学习之索引的优劣势及规则使用的文章就介绍到这了,更多相关mysql高级索引内容请搜索开心学习网以前的文章或继续浏览下面的相关文章希望大家以后多多支持开心学习网!

    原文链接:https://blog.csdn.net/m0_55886240/article/details/114576113

    上一篇下一篇

    猜您喜欢

    热门推荐