网站首页 > 文章中心 > 其它

怎么看mysql索引

作者:小编 更新时间:2023-09-06 16:13:25 浏览量:46人看过

mysql怎么看索引状态

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

多种评注.

怎么查看表的索引mysql

查看索引的语法格式如下:

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显示评注.

用mysql查询某字段是否有索引怎么做?

显示一个表所有索引的SQL语句是:

show index from 数据库名.表名

查看某表某一列上的索引使用下面的SQL语句:

show index from 数据库名.表名 where column_name like '列名'

下面的SQL语句在我的数据库上执行成功:

show index from web.clubuser where column_name like 'user'.

如何利用MySQL命令创建,查看,重建和删除索引

第一步,创建数据库表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索引相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章