SHOW INDEX FROM tbl_name [FROM db_name]
例如,
mysql SHOW INDEX FROM mytable FROM mydb;
mysql SHOW INDEX FROM mydb.mytable;
SHOW KEYS是SHOW INDEX的同义词.您也可以使用mysqlshow -k db_name tbl_name命令列举一个表的索引.
SHOW INNODB STATUS语法
SHOW INNODB STATUS
SHOW INDEX会返回表索引信息.其格式与ODBC中的SQLStatistics调用相似.
SHOW INDEX会返回以下字段:
- Table
表的名称.
- Non_unique
如果索引不能包括重复词,则为0.如果可以,则为1.
- Key_name
索引的名称.
- Seq_in_index
索引中的列序列号,从1开始.
- Column_name
列名称.
- Collation
列以什么方式存储在索引中.在MySQL中,有值'A'(升序)或NULL(无分类).
- Cardinality
索引中唯一值的数目的估计值.通过运行ANALYZE TABLE或myisamchk -a可以更新.基数根据被存储为整数的统计数据来计数,所以即使对于小型表,该值也没有必要是精确的.基数越大,当进行联合时,MySQL使用该索引的机会就越大.
- Sub_part
如果列只是被部分地编入索引,则为被编入索引的字符的数目.如果整列被编入索引,则为NULL.
- Packed
指示关键字如何被压缩.如果没有被压缩,则为NULL.
- Null
如果列含有NULL,则含有YES.如果没有,则该列含有NO.
- Index_type
用过的索引方法(BTREE, FULLTEXT, HASH, RTREE).
- Comment
多种评注.
查看索引的语法格式如下:
SHOW INDEX FROM 表名 [ FROM 数据库名]
语法说明如下:
表名:指定需要查看索引的数据表名.
数据库名:指定需要查看索引的数据表所在的数据库,可省略.比如,SHOW INDEX FROM student FROM test; 语句表示查看 test 数据库中 student 数据表的索引.
示例
① row
Non_unique: 0
Key_name: height
Seq_in_index: 1
Column_name: height
Collation: A
Cardinality: 0
Sub_part: NULL
Packed: NULL
Null: YES
Index_type: BTREE
Comment:
Index_comment:
其中各主要参数说明如下:
参数说明
Non_unique表示该索引是否是唯一索引.若不是唯一索引,则该列的值为 1;若是唯一索引,则该列的值为 0.
Key_name表示索引的名称.
Seq_in_index表示该列在索引中的位置,如果索引是单列的,则该列的值为 1;如果索引是组合索引,则该列的值为每列在索引定义中的顺序.
Column_name表示定义索引的列字段.
Collation表示列以何种顺序存储在索引中.在 MySQL 中,升序显示值"A"(升序),若显示为 NULL,则表示无分类.
Cardinality索引中唯一值数目的估计值.基数根据被存储为整数的统计数据计数,所以即使对于小型表,该值也没有必要是精确的.基数越大,当进行联合时,MySQL 使用该索引的机会就越大.
Sub_part表示列中被编入索引的字符的数量.若列只是部分被编入索引,则该列的值为被编入索引的字符的数目;若整列被编入索引,则该列的值为 NULL.
Packed指示关键字如何被压缩.若没有被压缩,值为 NULL.
Null用于显示索引列中是否包含 NULL.若列含有 NULL,该列的值为 YES.若没有,则该列的值为 NO.
Index_type显示索引使用的类型和方法(BTREE、FULLTEXT、HASH、RTREE).
Comment显示评注.
显示一个表所有索引的SQL语句是:
show index from 数据库名.表名
查看某表某一列上的索引使用下面的SQL语句:
show index from 数据库名.表名 where column_name like '列名'
下面的SQL语句在我的数据库上执行成功:
show index from web.clubuser where column_name like 'user'.
第一步,创建数据库表t_tree_info,命令如下:
create table t_tree_info(
tdesc varchar(100)
);
如下图所示:
第三步,创建数据库索引tree_name,命令如下:
第四步,查看数据库表索引,利用show命令
show index from t_tree_info;
第五步,重建索引,利用repari命令
repair table t_tree_info quick;
第六步,索引创建好了,在不使用该索引时,可以删除
drop index tree_name on t_tree_info;
以上就是土嘎嘎小编为大家整理的怎么看mysql索引相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!