mysql创建、删除、重建、删除索引的操作命令的一些总结

  1. 创建索引

    索引的创建可以在create table语句中进行,也可以在表创建完成后单独的使用create index或者alter table来给表增加索引。一下语句分别是如何创建主键的索引(primary key),联合索引(unique)和普通索引(index)方法。

    mysql> alter table 'table_name' add index 'index_name'(column list);

    mysql>alter table 'table_name' add unique 'index_name' (column list);

    mysql>alter table 'table_name' add primary key 'index_name' (column list);

    mysql>create index 'index_name' on 'table_name' (column list);

    mysql>create unique index 'index_name' on 'table_name'(column list);

    例如:

    mysql>alter table 'article' add index 'id';      给article表增加id索引

    或者

    mysql>alter table 'article' add index ('id','order_id);   给article表增加id,order_id索引

  2. 重建索引

    重建索引在常规的数据库维护中使用。在数据库运行了较长的时间后,索引都会损坏的可能,所以要重建索引。

    mysql>repait table 'table_name' quick;

  3. 查询数据表的索引

    mysql>show index from 'table_name';

  4. 删除索引

    删除索引可以使用alter table 或者 drop index语句来实现

    mysql>drop index 'index_name' on 'table_name'(column list);

    mysql>alter table 'table_name' drop index 'index_name' (column list);

    mysql>alter table 'table_name' drop unique 'index_name' (column list);

    mysql>alter table 'table_name' drop primary key 'index_name'(column list);

    在前面三条语句中,都删除了table_name中的索引index_name。而在最后一条语句中,只在primary key索引中使用,因为一个表只有有一个唯一的primary key 索引,因此不可能指定索引名。如果没有创建primary key索引,但 表具有一个或者多个unique索引,则mysql将删除第一个unique索引。如果从删除的某列,索引会受影响。



你可能感兴趣的:(mysql创建、删除、重建、删除索引的操作命令的一些总结)