Muitas vezes você pode precisar listar todos os índices no MySQL ou exibir todos os índices no MySQL. Veja como mostrar índices no MySQL usando o comando SHOW INDEX no MySQL.
MySQL mostra índices no banco de dados
Aqui estão as etapas para mostrar índices no MySQL. Usaremos a instrução SHOW INDEXES para listar todos os índices no banco de dados.
Aqui está a sintaxe para SHOW INDEXES
SHOW INDEXES FROM table_name;
OU
SHOW INDEXES FROM db_name.table_name;
OU
SHOW INDEXES FROM table_name in db_name;
OU
SHOW KEYS FROM table_name in db_name;
Na consulta acima, você precisa especificar o nome da tabela e o nome do banco de dados para o qual deseja mostrar os índices.
Bônus de leitura:MySQL Comparar Bancos de Dados
Mostrar índices MySQL para tabela
Aqui está um exemplo para listar todos os índices da tabela (por exemplo, amostra) no MySQL. Substitua-o pelo nome da sua tabela.
mysql> show indexes from cities in sample; +--------+------------+------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Sub_part | Packed | Null | Index_type | Comment | Index_comment | +--------+------------+------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+ | cities | 0 | PRIMARY | 1 | city_id | A | 0 | NULL | NULL | | BTREE | | | | cities | 1 | country_id | 1 | country_id | A | 0 | NULL | NULL | | BTREE | | | +--------+------------+------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
A saída exibe muitos atributos de cada índice, incluindo cardinalidade, nome da chave, nome da coluna etc.
Bônus de leitura:MySQL Alter Stored Procedure
MySQL mostra índices para todas as tabelas no banco de dados
Aqui está a consulta SQL para listar todos os índices em um esquema de banco de dados MySQL específico (por exemplo, amostra) mencionado em negrito
mysql> SELECT DISTINCT TABLE_NAME, INDEX_NAME FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA = 'sample'; +---------------+---------------+ | TABLE_NAME | INDEX_NAME | +---------------+---------------+ | categories | PRIMARY | | cities | PRIMARY | | cities | country_id | | countries | PRIMARY | | old_orders | u_orders | | orders | PRIMARY | | orders_list | PRIMARY | | recent_orders | order_id | | recent_orders | unique_amount | | x_orders | PRIMARY | +---------------+---------------+
Bônus de leitura:MySQL lista todos os procedimentos
MySQL SHOW INDEX Size
O comprimento do índice é armazenado na tabela information_schema.tables. Aqui está a consulta SQL para mostrar o tamanho do índice no MySQL para uma 'amostra' específica do banco de dados. Substitua-o pelo nome do banco de dados.
mysql> SELECT table_name, concat( round( data_length / ( 1024 *1024 ) , 2 ) , 'Mb' ) AS 'data_length_mb', concat( round( index_length / ( 1024 *1024 ) , 2 ) , 'Mb' ) AS 'index_length_mb', concat( round( round( data_length + index_length ) / ( 1024 *1024 ) , 2 ) , 'Mb' ) AS 'total_size_mb' FROM information_schema.tables WHERE table_schema ='sample' ORDER BY data_length desc; +----------------+----------------+-----------------+---------------+ | table_name | data_length_mb | index_length_mb | total_size_mb | +----------------+----------------+-----------------+---------------+ | meeting | 0.02Mb | 0.00Mb | 0.02Mb | | sample_data | 0.02Mb | 0.00Mb | 0.02Mb | | ... | ... | ... | ... | +----------------+----------------+-----------------+---------------+
Bônus de leitura:MySQL Redefinir Senha Root
Lista todos os índices de todos os esquemas de banco de dados
Aqui está a consulta SQL para mostrar os índices de todas as tabelas em um esquema de banco de dados MySQL ao qual você tem acesso.
SELECT DISTINCT TABLE_NAME, INDEX_NAME FROM INFORMATION_SCHEMA.STATISTICS;
Espero que agora você possa listar índices facilmente no MySQL.
O Ubiq facilita a visualização de dados em minutos e o monitoramento em painéis em tempo real. Experimente hoje!