MySQL SHOW INDEX语法的实际应用


  本文标签:MySQL SHOW INDEX

  以下的文章主要描述的是MySQL SHOW INDEX语法的实际操作用法以及其实际查看索引状态(语法)的具体内容的描述,如果你对这一技术,心存好奇的话,以下的文章将会揭开它的神秘面纱  。

  1. 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语法的另一种形式  。这两个语句是等价的:

  

  1. mysql> SHOW INDEX FROM mytable FROM mydb;  
  2. mysql> SHOW INDEX FROM mydb.mytable;  

  

  SHOW KEYS是MySQL SHOW INDEX的同义词  。您也可以使用mysqlshow -k db_name tbl_name命令列举一个表的索引  。

  SHOW INNODB STATUS语法

  

  1. SHOW INNODB STATUS 

  在MySQL 5.1中,这是SHOW ENGINE INNODB STATUS的同义词,但不赞成使用  。