mysql索引初認識

mysql> use mysql;
Database changed
mysql> show index from user;
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment |
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
| user  |          0 | PRIMARY  |            1 | Host        | A         |        NULL |     NULL | NULL   |      | BTREE      |         |
| user  |          0 | PRIMARY  |            2 | User        | A         |           2 |     NULL | NULL   |      | BTREE      |         |
+-------+------------+----------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+
2 rows in set (0.00 sec)

這是經過在centos6.5中操做數據庫來認識mysql中的索引:mysql

一、Table 表的名稱。sql

二、 Non_unique 若是索引不能包括重複詞,則爲0,若是能夠則爲1。數據庫

三、 Key_name 索引的名稱centos

四、 Seq_in_index 索引中的列序列號,從1開始。spa

五、 Column_name 列名稱。code

六、 Collation 列以什麼方式存儲在索引中。在MySQL中,有值‘A’(升序)或NULL(無分類)。blog

七、Cardinality 索引中惟一值的數目的估計值。經過運行ANALYZE TABLE或myisamchk -a能夠更新。基數根據被存儲爲整數的統計數據來計數,因此即便對於小型表,該值也沒有必要是精確的。基數越大,當進行聯合時,MySQL使用該索引的機會就越大。索引

八、Sub_part 若是列只是被部分地編入索引,則爲被編入索引的字符的數目。若是整列被編入索引,則爲NULL。it

九、 Packed 指示關鍵字如何被壓縮。若是沒有被壓縮,則爲NULL。io

十、 Null 若是列含有NULL,則含有YES。若是沒有,則該列含有NO。

十一、 Index_type 用過的索引方法(BTREE, FULLTEXT, HASH, RTREE)。

十二、 Comment 多種評註,您能夠使用db_name.tbl_name做爲tbl_name FROM db_name語法的另外一種形式。這兩個語句是等價的:

mysql> shoow index from mysql.user;
mysql> show index from user from mysql;
相關文章
相關標籤/搜索