Mysql
 sql >> डेटाबेस >  >> RDS >> Mysql

डेटाबेस में MySQL शो इंडेक्स

कई बार आपको MySQL में सभी इंडेक्स सूचीबद्ध करने या MySQL में सभी इंडेक्स प्रदर्शित करने की आवश्यकता हो सकती है। MySQL में SHOW INDEX कमांड का उपयोग करके MySQL में इंडेक्स दिखाने का तरीका यहां दिया गया है।

MySQL डेटाबेस में इंडेक्स दिखाएं

यहाँ MySQL में अनुक्रमणिका दिखाने के चरण दिए गए हैं। हम डेटाबेस में सभी इंडेक्स को सूचीबद्ध करने के लिए SHOW INDEXES स्टेटमेंट का उपयोग करेंगे।

यहां SHOW INDEXES का सिंटैक्स दिया गया है

SHOW INDEXES FROM table_name;

या

SHOW INDEXES FROM db_name.table_name;

या

SHOW INDEXES FROM table_name in db_name;

या

SHOW KEYS FROM table_name in db_name;

उपरोक्त क्वेरी में, आपको उस तालिका का नाम और डेटाबेस नाम निर्दिष्ट करना होगा जिसके लिए आप अनुक्रमणिका दिखाना चाहते हैं।

बोनस पढ़ें :MySQL डेटाबेस की तुलना करें

MySQL तालिका के लिए अनुक्रमणिका दिखाएं

MySQL में तालिका (जैसे नमूना) के लिए सभी अनुक्रमणिका सूचीबद्ध करने के लिए यहां एक उदाहरण दिया गया है। इसे अपने टेबल नाम से बदलें।

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      |         |               |
+--------+------------+------------+--------------+-------------+-----------+-------------+----------+--------+------+------------+---------+---------------+

आउटपुट प्रत्येक इंडेक्स की कई विशेषताओं को प्रदर्शित करता है जिसमें कार्डिनैलिटी, मुख्य नाम, कॉलम नाम आदि शामिल हैं।

बोनस पढ़ें :MySQL Alter Stored प्रक्रिया

MySQL डेटाबेस में सभी तालिकाओं के लिए अनुक्रमणिका दिखाएं

बोल्ड में उल्लिखित एक विशिष्ट MySQL डेटाबेस स्कीमा (उदाहरण के लिए नमूना) में सभी इंडेक्स को सूचीबद्ध करने के लिए SQL क्वेरी यहां दी गई है

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       |
+---------------+---------------+

बोनस पढ़ें :MySQL सभी प्रक्रियाओं की सूची बनाएं

MySQL शो इंडेक्स साइज

अनुक्रमणिका की लंबाई info_schema.tables तालिका में संग्रहीत है। यहाँ विशिष्ट डेटाबेस 'नमूना' के लिए MySQL में अनुक्रमणिका आकार दिखाने के लिए SQL क्वेरी है। इसे अपने डेटाबेस नाम से बदलें।

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        |
| ...            | ...            | ...             | ...           |
+----------------+----------------+-----------------+---------------+

बोनस पढ़ें :MySQL रूट पासवर्ड रीसेट करें

सभी डेटाबेस स्कीमा के सभी इंडेक्स सूचीबद्ध करें

यहां सभी MySQL डेटाबेस स्कीमा में सभी तालिकाओं की अनुक्रमणिका दिखाने के लिए SQL क्वेरी है, जिस तक आपकी पहुंच है।

SELECT
    DISTINCT TABLE_NAME,
    INDEX_NAME
FROM
    INFORMATION_SCHEMA.STATISTICS;	

उम्मीद है, अब आप आसानी से MySQL में अनुक्रमणिका सूचीबद्ध कर सकते हैं।

Ubiq मिनटों में डेटा को विज़ुअलाइज़ करना और रीयल-टाइम डैशबोर्ड में मॉनिटर करना आसान बनाता है। इसे आज ही आजमाएं!

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. CURRENT_TIME उदाहरण – MySQL

  2. MySQL डेटाबेस से html ड्रॉपडाउन सूची में डेटा ला रहा है

  3. MySQL में IP एड्रेस स्टोर करने का सबसे कारगर तरीका

  4. MySQL IN स्टेटमेंट के लिए PDO बाइंडिंग मान

  5. MySQL अद्यतन:टी-एसक्यूएल डेवलपर्स के लिए शीर्ष 5 युक्तियाँ