Vaak moet u mogelijk alle indexen in MySQL weergeven of alle indexen in MySQL weergeven. Hier leest u hoe u indexen in MySQL kunt weergeven met de opdracht SHOW INDEX in MySQL.
MySQL Toon indexen in database
Hier zijn de stappen om indexen in MySQL weer te geven. We zullen de SHOW INDEXES-instructie gebruiken om alle indexen in de database weer te geven.
Hier is de syntaxis voor SHOW INDEXES
SHOW INDEXES FROM table_name;
OF
SHOW INDEXES FROM db_name.table_name;
OF
SHOW INDEXES FROM table_name in db_name;
OF
SHOW KEYS FROM table_name in db_name;
In de bovenstaande query moet u de tabelnaam en databasenaam specificeren waarvoor u indexen wilt weergeven.
Bonus Lezen:MySQL Databases vergelijken
MySQL Toon indexen voor tabel
Hier is een voorbeeld om alle indexen voor tabellen (bijv. voorbeeld) in MySQL weer te geven. Vervang het door je tafelnaam.
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 | | | +--------+------------+------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+
De uitvoer toont veel attributen van elke index, inclusief kardinaliteit, sleutelnaam, kolomnaam, enz.
Bonus Lezen:MySQL Wijzig opgeslagen procedure
MySQL Toon indexen voor alle tabellen in database
Hier is de SQL-query om alle indexen weer te geven in een specifiek MySQL-databaseschema (bijvoorbeeld voorbeeld) dat wordt vermeld in vet
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 | +---------------+---------------+
Bonus Lezen:MySQL Lijst van alle procedures
MySQL SHOW INDEX Grootte
Indexlengte wordt opgeslagen in de tabel information_schema.tables. Hier is de SQL-query om de indexgrootte in MySQL te tonen voor een specifieke database 'sample'. Vervang het door uw databasenaam.
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 | | ... | ... | ... | ... | +----------------+----------------+-----------------+---------------+
Bonus Lezen:MySQL Reset Root-wachtwoord
Lijst alle indexen van alle databaseschema's
Hier is de SQL-query om indexen van alle tabellen te tonen in een volledig MySQL-databaseschema waartoe u toegang hebt.
SELECT DISTINCT TABLE_NAME, INDEX_NAME FROM INFORMATION_SCHEMA.STATISTICS;
Hopelijk kun je nu gemakkelijk indexen weergeven in MySQL.
Ubiq maakt het gemakkelijk om gegevens binnen enkele minuten te visualiseren en in realtime dashboards te controleren. Probeer het vandaag nog!