索引的含义和特点
1.索引是一个单独的、存储在磁盘上的数据库结构,它包含着对数据表里所有记录的引用指针。用于快速寻找记录。
2.索引的存储类型:BTREE 和 HASH。
(MyISAM 和 InnoDB 只支持 BTREE)
3.索引加速查询速度,但是降低了数据的增加、删除和修改速度。
索引的分类
1.普通索引 唯一索引
2.单列索引和组合索引
3.全文索引 (MyISAM 上 char varchar text 类型支持)
4.空间索引:geometry,point,linestring,polygon 类型 且必须为 not null
索引的创建
1.创建表的时候创建索引
INDEX(clumns1)
INDEX index_name(clumns1)
INDEX multidx(clumns1, clumns2, clumns3)
NOTE:: 组合索引使用 “最左前缀” ;
2.在已经存在的表上创建索引
ALTER TABLE table_name 0
ADD INDEX index_name(clumns1);
SQL:: show index from table_name;
可以查看该数据表上的所有 index 。
3. 使用 create index 创建索引
CREATE INDEX index_name
ON table_name(clumns1);
删除索引
删除 table_name 表中的名为 index_name 的索引。
ALTER TABLE table_name
DROP INDEX index_name;
DROP INDEX index_name
ON table_name;