以下的文章主要描述的是mysqlshow index语法的实际操作用法以及其实际查看索引状态(语法)的具体内容的描述,如果你对这一技术,心存好奇的话,以下的文章将会揭开它的神秘面纱。
show index from tbl_name [from db_name]
mysql show index会返回表索引信息。其格式与odbc中的sqlstatistics调用相似。
mysql show index会返回以下字段:
table
表的名称。
non_unique
如果索引不能包括重复词,则为0。如果可以,则为1。
key_name
索引的名称。
seq_in_index
索引中的列序列号,从1开始。
column_name
列名称。
collation
列以什么方式存储在索引中。在mysqlshow index语法中,有值’a’(升序)或null(无分类)。
cardinality
索引中唯一值的数目的估计值。通过运行analyze table或myisamchk -a可以更新。基数根据被存储为整数的统计数据来计数,所以即使对于小型表,该值也没有必要是精确的。基数越大,当进行联合时,mysql使用该索引的机会就越大。
sub_part
如果列只是被部分地编入索引,则为被编入索引的字符的数目。如果整列被编入索引,则为null。
packed
指示关键字如何被压缩。如果没有被压缩,则为null。
null
如果列含有null,则含有yes。如果没有,则该列含有no。
index_type
用过的索引方法(btree, fulltext, hash, rtree)。
comment
多种评注。
您可以使用db_name.tbl_name作为tbl_name from db_name语法的另一种形式。这两个语句是等价的:
mysql> show index from mytable from mydb; mysql> show index from mydb.mytable;
show keys是mysql show index的同义词。您也可以使用mysqlshow -k db_name tbl_name命令列举一个表的索引。
show innodb status语法
show innodb status
在mysql 5.1中,这是show engine innodb status的同义词,但不赞成使用。