Mysql索引查看命令概览(mysql查看索引命令)
Mysql索引可以极大地提高查询性能,而了解多种索引查看命令将有助于索引的有效利用,接下来本文将介绍Mysql的索引查看命令概览。
首先,从数据库层面来看,可以使用show table status查看当前Mysql中有哪些表,其中会显示出每个表使用的索引情况及其大小情况。例如,如下代码:
mysql> show table status;
+—————–+——–+———+————+——+—————-+————-+—————–+————–+———–+—————-+———————+————+————-+—————–+———-+—————-+———+ | Name | Engine | Version | Row_format | Rows | Avg_row_length | Data_length | Max_data_length | Index_length | Data_free | Auto_increment | Create_time | Update_time | Check_time | Collation | Checksum | Create_options | Comment | +—————–+——–+———+————+——+—————-+————-+—————–+————–+———–+—————-+———————+————+————-+—————–+———-+—————-+———+
接着,我们可以使用show index查看当前的表索引情况,该语句用来显示指定表的索引信息,例如:
mysql> show index from 表名;
+————+————+————–+————–+————-+———–+————-+———-+——–+——+————+———+—————+
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment |
+————+————+————–+————–+————-+———–+————-+———-+——–+——+————+———+—————+
再次,我们还可以使用explain语句查看查询使用的使用索引,比如下面语句:
mysql> explain select * from 表名;
+—-+————-+——-+————+——+—————+——+———+——+——+———-+————-+
| id | select_type | table | partitions | type | possible_keys | key | key_len | ref | rows | filtered | Extra |
+—-+————-+——-+————+——+—————+——+———+——+——+———-+————-+
| 1 | SIMPLE | 表名 | NULL | ref | PRIMARY | PRIMARY| 4 | const| 311 | 100.00 | Using index |
+—-+————-+——-+————+——+—————+——+———+——+——+———-+————-+
最后,Mysql还提供了系统表information_schema.statistics,可以查看当前Mysql数据库中所有表的索引信息,例如:
mysql> select table_schema, table_name, index_name, include_columns, cardinality from
-> information_schema.statistics;
+————–+————+————–+——————+————+
| table_schema | table_name | index_name | include_columns | cardinality|
+————–+————+————–+——————+————+
| test | user | PRIMARY | user_id | 308 |
| test | user | user_name | user_name | 308 |
+————–+————+————–+——————+————+
综上所述,本文简单介绍了Mysql索引查看命令概览,它们可以帮助我们更好地了解索引的使用情况,更有效的利用和管理索引。