- 1 1. परिचय
- 2 2. MySQL इंडेक्स क्या है?
- 3 3. MySQL इंडेक्स की जाँच कैसे करें
- 4 4. इंडेक्स उपयोग कैसे जांचें
- 5 5. इंडेक्स प्रबंधन
- 6 6. इंडेक्स ऑप्टिमाइज़ेशन (प्रदर्शन सुधार)
- 7 7. इंडेक्स के बारे में अक्सर पूछे जाने वाले प्रश्न (FAQ)
- 7.1 क्या अधिक इंडेक्स जोड़ने से खोज गति में सुधार होगा?
- 7.2 किन कॉलमों पर इंडेक्स होना चाहिए?
- 7.3 क्या इंडेक्स स्वचालित रूप से बनते हैं?
- 7.4 B-Tree, Hash, और FULLTEXT इंडेक्स के बीच कैसे चुनें?
- 7.5 इंडेक्स का आकार कैसे जांचें?
- 7.6 इंडेक्स का उपयोग हो रहा है या नहीं, कैसे जांचें?
- 7.7 इंडेक्स कब हटाना चाहिए?
- 8 8. सारांश
1. परिचय
MySQL एक रिलेशनल डेटाबेस है जो कई वेब एप्लिकेशन और डेटा प्रबंधन प्रणालियों में व्यापक रूप से उपयोग किया जाता है। डेटा पुनर्प्राप्ति गति को बढ़ाने के लिए एक तंत्र जिसे “इंडेक्स” कहा जाता है, मौजूद है। हालांकि, यदि सही ढंग से प्रबंधित न किया जाए, तो इंडेक्स वास्तव में प्रदर्शन को घटा सकते हैं।
इंडेक्स की जाँच क्यों महत्वपूर्ण है?
डेटाबेस में एक इंडेक्स पुस्तक के इंडेक्स सेक्शन के समान होता है। सही तरीके से डिज़ाइन किए गए इंडेक्स खोज क्वेरी की निष्पादन गति को सुधारते हैं। हालांकि, निम्नलिखित समस्याएँ उत्पन्न हो सकती हैं:
- इंडेक्स सही ढंग से नहीं बनाए गए → धीमी खोजों का कारण बन सकते हैं
- अनावश्यक इंडेक्स मौजूद हैं → अपडेट और इंसर्ट की गति धीमी हो जाती है
- कौन से इंडेक्स उपयोग में हैं, इस बारे में अनिश्चितता → यह तय करना कठिन हो जाता है कि अप्रयुक्त इंडेक्स को हटाया जाना चाहिए या नहीं
इस लेख में आप क्या सीखेंगे
- MySQL इंडेक्स का मूल तंत्र
- वर्तमान इंडेक्स की जाँच कैसे करें (SQL कमांड का उपयोग करके)
- इंडेक्स को कैसे प्रबंधित और अनुकूलित करें
- इंडेक्स उपयोग का विश्लेषण करने की तकनीकें
अब, चलिए व्यवस्थित रूप से MySQL इंडेक्स के बारे में सीखते हैं और इस ज्ञान का उपयोग करके डेटाबेस प्रदर्शन को बेहतर बनाते हैं।
2. MySQL इंडेक्स क्या है?
इंडेक्स डेटाबेस प्रदर्शन को सुधारने के लिए एक आवश्यक विशेषता है। इस अनुभाग में, हम इंडेक्स की मूल अवधारणा, प्रकार, लाभ और हानियों की व्याख्या करेंगे।
इंडेक्स की मूल अवधारणा
डेटाबेस इंडेक्स एक तंत्र है जो विशिष्ट कॉलम में मानों की तेज़ खोज की अनुमति देता है। उदाहरण के लिए, जब बड़ी मात्रा में डेटा वाली तालिका में किसी विशिष्ट रिकॉर्ड की खोज की जाती है, तो बिना इंडेक्स के डेटाबेस को सभी रिकॉर्ड स्कैन करने पड़ते हैं (पूर्ण तालिका स्कैन)। इंडेक्स लागू करने से डेटा पुनर्प्राप्ति कुशल बनती है और प्रसंस्करण गति में उल्लेखनीय सुधार होता है।
MySQL इंडेक्स के प्रकार
MySQL कई प्रकार के इंडेक्स का समर्थन करता है, प्रत्येक विशिष्ट उपयोग मामलों के लिए उपयुक्त है।
- PRIMARY KEY (प्राथमिक कुंजी इंडेक्स)
- टेबल में केवल एक बार सेट किया जा सकता है
- टेबल की अद्वितीयता सुनिश्चित करता है
- क्लस्टर्ड इंडेक्स के रूप में कार्य करता है
- UNIQUE इंडेक्स
- निर्दिष्ट कॉलम में मान दोहराए नहीं जाते हैं, यह सुनिश्चित करता है
- NULL मानों की अनुमति है (एकाधिक NULL की अनुमति है)
- INDEX (सामान्य इंडेक्स)
- खोज को तेज़ करने के लिए उपयोग किया जाता है
- डुप्लिकेट डेटा की अनुमति है
- FULLTEXT इंडेक्स (पाठ खोज के लिए)
- पाठ खोज को अनुकूलित करता है
MATCH ... AGAINSTसिंटैक्स के साथ संयोजन में उपयोग किया जाता है
- SPATIAL इंडेक्स (भौगोलिक डेटा के लिए)
- स्थानिक (GIS) डेटा के लिए डिज़ाइन किया गया है
इंडेक्स के लाभ और हानियां
लाभ
- क्वेरी खोज गति में सुधार करता है
- JOIN ऑपरेशनों और WHERE क्लॉज़ की प्रदर्शन को बढ़ाता है
- विशिष्ट डेटा की पुनर्प्राप्ति को अधिक कुशल बनाता है
हानियां
- अधिक इंडेक्स INSERT, UPDATE, और DELETE ऑपरेशनों को धीमा कर देते हैं
- डिस्क स्पेस का उपभोग करता है
- खराब डिज़ाइन किए गए इंडेक्स प्रदर्शन को घटा सकते हैं

3. MySQL इंडेक्स की जाँच कैसे करें
MySQL इंडेक्स को सही ढंग से प्रबंधित करने के लिए यह महत्वपूर्ण है कि किसी तालिका पर वर्तमान में कौन से इंडेक्स परिभाषित हैं, इसकी जाँच की जाए। इस अनुभाग में, हम SHOW INDEX कमांड, INFORMATION_SCHEMA.STATISTICS, और mysqlshow कमांड का उपयोग करके इंडेक्स की जाँच कैसे करें, समझाते हैं।
SHOW INDEX कमांड (बेसिक विधि)
MySQL में, आप SHOW INDEX कमांड का उपयोग करके किसी विशिष्ट तालिका पर परिभाषित इंडेक्स की सूची प्राप्त कर सकते हैं। यह कमांड आपको इंडेक्स का नाम, इंडेक्स द्वारा कवर किए गए कॉलम, और क्या एक यूनिक प्रतिबंध मौजूद है जैसी विवरणों की जाँच करने की अनुमति देता है।
बेसिक सिंटैक्स
SHOW INDEX FROM table_name;
उदाहरण
उदाहरण के लिए, users तालिका पर परिभाषित इंडेक्स की जाँच करने के लिए, निम्नलिखित SQL चलाएँ:
SHOW INDEX FROM users;
उदाहरण आउटपुट
| Table | Non_unique | Key_name | Seq_in_index | Column_name | Collation | Cardinality | Index_type |
|---|---|---|---|---|---|---|---|
| users | 0 | PRIMARY | 1 | id | A | 1000 | BTREE |
| users | 1 | idx_email | 1 | A | 500 | BTREE |
INFORMATION_SCHEMA.STATISTICS का उपयोग (विस्तृत जानकारी)
MySQL की सिस्टम तालिका INFORMATION_SCHEMA.STATISTICS का उपयोग करके, आप SHOW INDEX जैसी ही जानकारी अधिक लचीलापन के साथ प्राप्त कर सकते हैं।
किसी विशिष्ट तालिका के लिए इंडेक्स की जाँच
SELECT TABLE_NAME, INDEX_NAME, COLUMN_NAME, NON_UNIQUE
FROM INFORMATION_SCHEMA.STATISTICS
WHERE TABLE_SCHEMA = 'your_database_name' AND TABLE_NAME = 'users';
पूरे डेटाबेस में इंडेक्स प्राप्त करें
SELECT TABLE_NAME, COLUMN_NAME, INDEX_NAME
FROM INFORMATION_SCHEMA.STATISTICS
WHERE TABLE_SCHEMA = 'your_database_name';
mysqlshow कमांड (CLI से जांचें)
आप MySQL कमांड-लाइन टूल्स का उपयोग करके भी इंडेक्स जानकारी प्राप्त कर सकते हैं। यह विशेष रूप से उपयोगी है जब MySQL सर्वर पर SSH के माध्यम से काम कर रहे हों।
कमांड कैसे चलाएँ
mysqlshow -u username -p password database_name table_name
उदाहरण
mysqlshow -u root -p my_database users
यदि कोई इंडेक्स मौजूद नहीं है तो क्या करें
यदि SHOW INDEX चलाने या INFORMATION_SCHEMA.STATISTICS को क्वेरी करने के बाद कोई इंडेक्स नहीं दिखता है, तो तालिका में उपयुक्त इंडेक्स नहीं हो सकते हैं। ऐसे में, आप आवश्यकतानुसार इंडेक्स बनाकर खोज प्रदर्शन को बेहतर बना सकते हैं।
नया इंडेक्स बनाएं
CREATE INDEX idx_column ON users (email);
प्राथमिक कुंजी सेट करें (PRIMARY KEY)
ALTER TABLE users ADD PRIMARY KEY (id);
अनावश्यक इंडेक्स हटाएँ
ALTER TABLE users DROP INDEX idx_column;
4. इंडेक्स उपयोग कैसे जांचें
इंडेक्स सही ढंग से काम कर रहे हैं या नहीं, यह जांचना MySQL प्रदर्शन अनुकूलन में एक महत्वपूर्ण कदम है। इस भाग में, हम समझाते हैं कि EXPLAIN कमांड और Performance Schema का उपयोग करके यह कैसे पता करें कि कोई क्वेरी कौन से इंडेक्स का उपयोग कर रही है।
EXPLAIN के साथ क्वेरी विश्लेषण
EXPLAIN कमांड का उपयोग यह देखने के लिए किया जाता है कि कोई SQL क्वेरी कैसे निष्पादित होगी। यह आपको उपयोग किए गए इंडेक्स, एक्सेस मेथड, और निष्पादन योजना का विश्लेषण करने में मदद करता है, जिससे यह सत्यापित किया जा सके कि इंडेक्स इच्छित रूप से काम कर रहे हैं या नहीं।
बेसिक सिंटैक्स
EXPLAIN SELECT * FROM table_name WHERE condition;
उदाहरण
उदाहरण के लिए, email कॉलम को शर्त के रूप में उपयोग करके users तालिका को खोजने के लिए:
EXPLAIN SELECT * FROM users WHERE email = 'test@example.com';
उदाहरण आउटपुट
| id | select_type | table | type | possible_keys | key | key_len | ref | rows | Extra |
|---|---|---|---|---|---|---|---|---|---|
| 1 | SIMPLE | users | ref | idx_email | idx_email | 256 | const | 1 | Using index |
मुख्य बिंदु
- यदि
type = ALLहै, तो क्वेरी पूरी तालिका स्कैन कर रही है, इसलिए आपको संभवतः एक इंडेक्स की आवश्यकता होगी। - यदि
keyमें कोई इंडेक्स नाम दिखाई देता है, तो वह इंडेक्स उपयोग में है। - यदि
rowsमान बहुत बड़ा है, तो क्वेरी अनुकूलन आवश्यक हो सकता है।
Performance Schema का उपयोग
MySQL के performance_schema के साथ, आप विस्तृत रूप से विश्लेषण कर सकते हैं कि क्वेरी निष्पादन के दौरान कौन से इंडेक्स उपयोग में हैं और उनकी आवृत्ति क्या है।
क्वेरी निष्पादन आँकड़े प्राप्त करें
SELECT * FROM performance_schema.events_statements_summary_by_digest
WHERE DIGEST_TEXT LIKE '%SELECT%';
विशिष्ट तालिका के लिए इंडेक्स उपयोग जांचें
SELECT OBJECT_SCHEMA, OBJECT_NAME, INDEX_NAME, COUNT_STAR, SUM_TIMER_WAIT
FROM performance_schema.table_io_waits_summary_by_index_usage
WHERE OBJECT_SCHEMA = 'your_database_name' AND OBJECT_NAME = 'users';
यदि कोई इंडेक्स उपयोग नहीं हो रहा है तो क्या करें
1. क्वेरी की समीक्षा करें
यदि कोई इंडेक्स उपयोग नहीं हो रहा है, तो क्वेरी संरचना समस्या हो सकती है। उदाहरण के लिए, निम्न पैटर्न इंडेक्स उपयोग को रोक सकता है।
❌ गलत उदाहरण (फ़ंक्शन इंडेक्स उपयोग को अक्षम करता है)
SELECT * FROM users WHERE LOWER(email) = 'test@example.com';
→ LOWER(email) के कारण, email पर का इंडेक्स अनदेखा किया जा सकता है।
✅ सुधारा गया उदाहरण (फ़ंक्शन का उपयोग न करें)
SELECT * FROM users WHERE email = 'test@example.com';
2. इंडेक्स को पुनः बनाएं
यदि मौजूदा इंडेक्स सही ढंग से काम नहीं कर रहा है, तो उसे हटाकर पुनः बनाना कभी-कभी प्रदर्शन को बेहतर बना सकता है।
ALTER TABLE users DROP INDEX idx_email;
CREATE INDEX idx_email ON users(email);
3. आँकड़े अपडेट करें
यदि तालिका के आँकड़े पुराने हो जाएँ, तो MySQL इंडेक्स को इष्टतम रूप से उपयोग नहीं कर सकता। आप निम्न कमांड से आँकड़े रीफ़्रेश कर सकते हैं:
ANALYZE TABLE users;
5. इंडेक्स प्रबंधन
MySQL इंडेक्स डेटा पुनर्प्राप्ति प्रदर्शन को सुधारने के लिए आवश्यक हैं। हालांकि, यदि सही ढंग से प्रबंधित नहीं किए जाएँ, तो वे समग्र डेटाबेस प्रदर्शन को घटा सकते हैं। इस अनुभाग में, हम विस्तृत रूप से समझाते हैं कि कैसे इंडेक्स बनाएं, हटाएँ, और अनावश्यक इंडेक्स की पहचान करें।
इंडेक्स बनाना
उपयुक्त इंडेक्स बनाकर, आप डेटा खोज को काफी तेज़ कर सकते हैं। MySQL में, आप CREATE INDEX या ALTER TABLE का उपयोग करके इंडेक्स जोड़ सकते हैं।
बेसिक सिंटैक्स
CREATE INDEX index_name ON table_name(column_name);
उदाहरण
users तालिका में email कॉलम पर एक इंडेक्स जोड़ने के लिए:
CREATE INDEX idx_email ON users(email);
मल्टी-कॉलम इंडेक्स (कॉम्पोज़िट इंडेक्स)
CREATE INDEX idx_name_email ON users(last_name, first_name, email);
यूनिक इंडेक्स
CREATE UNIQUE INDEX idx_unique_email ON users(email);
प्राइमरी की सेट करना (PRIMARY KEY)
ALTER TABLE users ADD PRIMARY KEY (id);
इंडेक्स हटाना
अनावश्यक इंडेक्स को हटाने से डेटाबेस ओवरहेड कम करने में मदद मिलती है।
बेसिक सिंटैक्स
ALTER TABLE table_name DROP INDEX index_name;
उदाहरण
उदाहरण के लिए, idx_email नामक इंडेक्स को हटाने के लिए:
ALTER TABLE users DROP INDEX idx_email;
अनावश्यक इंडेक्स की पहचान और हटाना
अनुपयोगी इंडेक्स की जाँच
SELECT * FROM sys.schema_unused_indexes;
टेबल स्टेटस जाँचें (इंडेक्स इम्पैक्ट)
SHOW TABLE STATUS LIKE 'users';
अनावश्यक इंडेक्स हटाएँ
ALTER TABLE users DROP INDEX idx_unused;
हटाने के बाद, ANALYZE TABLE का उपयोग करके आँकड़े अपडेट करने की सिफ़ारिश की जाती है।
ANALYZE TABLE users;
6. इंडेक्स ऑप्टिमाइज़ेशन (प्रदर्शन सुधार)
सही इंडेक्स प्रबंधन MySQL क्वेरी प्रदर्शन को काफी सुधार सकता है। हालांकि, केवल इंडेक्स बनाना पर्याप्त नहीं है — सही डिज़ाइन, प्रबंधन, और मॉनिटरिंग आवश्यक हैं ताकि इष्टतम प्रदर्शन बनाए रखा जा सके।
उचित इंडेक्स डिज़ाइन
अच्छी तरह से डिज़ाइन किए गए इंडेक्स MySQL में खोज गति को नाटकीय रूप से सुधार सकते हैं।
वे केस जहाँ इंडेक्स लागू किए जाने चाहिए
| Recommended Use Case | Reason |
|---|---|
| Columns frequently used in WHERE clauses | Enables fast retrieval of specific data |
| Keys used in JOIN operations | Improves join performance |
| Columns used in ORDER BY / GROUP BY | Speeds up sorting and aggregation |
| Search columns in large datasets | Prevents full table scans |
वे केस जहाँ इंडेक्स लागू नहीं किए जाने चाहिए
| Not Recommended Case | Reason |
|---|---|
| Small tables | Full table scans may be faster |
| Columns frequently updated or deleted | Increases index maintenance cost |
| Low cardinality columns (few distinct values) | Limited performance benefit (e.g., gender, boolean flags) |
स्लो क्वेरी लॉग का उपयोग
स्लो क्वेरी लॉग आपको लंबी चलने वाली क्वेरीज़ की पहचान करने और यह विश्लेषण करने की अनुमति देता है कि कौन से इंडेक्स लागू नहीं हो रहे हैं।
स्लो क्वेरी लॉग सक्षम करें
SET GLOBAL slow_query_log = 'ON';
SET GLOBAL long_query_time = 2; -- Log queries taking longer than 2 seconds
स्लो क्वेरी लॉग जाँचें
SELECT * FROM mysql.slow_log ORDER BY start_time DESC LIMIT 10;
स्लो क्वेरी का विश्लेषण करें
EXPLAIN SELECT * FROM users WHERE last_login > '2024-01-01';
इंडेक्स लागू करने का उदाहरण
CREATE INDEX idx_last_login ON users(last_login);
आँकड़े अपडेट करना (ANALYZE & OPTIMIZE)
ANALYZE TABLE (आँकड़े अपडेट करें)
ANALYZE TABLE users;
OPTIMIZE TABLE (डिफ्रैगमेंटेशन)
OPTIMIZE TABLE users;
7. इंडेक्स के बारे में अक्सर पूछे जाने वाले प्रश्न (FAQ)
MySQL इंडेक्स डेटाबेस प्रदर्शन को सुधारने के लिए एक आवश्यक तंत्र हैं। हालांकि, यदि सही ढंग से प्रबंधित नहीं किए जाएँ, तो वे विपरीत प्रभाव डाल सकते हैं। इस अनुभाग में, हम MySQL इंडेक्स से संबंधित अक्सर पूछे जाने वाले प्रश्न (FAQ) और उनके उत्तरों का सारांश प्रस्तुत करते हैं।
क्या अधिक इंडेक्स जोड़ने से खोज गति में सुधार होगा?
उ: जरूरी नहीं।
इंडेक्स क्वेरी प्रदर्शन को सुधारने के लिए डिज़ाइन किए गए हैं, लेकिन बहुत अधिक इंडेक्स जोड़ने से वास्तव में डेटाबेस प्रदर्शन घट सकता है।
- लिखने का ओवरहेड बढ़ाता है (INSERT, UPDATE, DELETE)
- इंडेक्स का उपयोग क्वेरी पर निर्भर करता है
- अनावश्यक इंडेक्स मेमोरी का उपभोग करते हैं
किन कॉलमों पर इंडेक्स होना चाहिए?
उ: निम्नलिखित प्रकार के कॉलमों पर इंडेक्स लागू करना प्रभावी है:
| Recommended Columns | Reason |
|---|---|
| Columns frequently searched in WHERE clauses | Faster data retrieval |
| Columns used in JOIN operations | Optimizes table joins |
| Columns used in ORDER BY / GROUP BY | Improves sorting and aggregation performance |
क्या इंडेक्स स्वचालित रूप से बनते हैं?
उ: कुछ इंडेक्स स्वचालित रूप से बनते हैं, लेकिन अन्य को मैन्युअल रूप से जोड़ना पड़ता है।
स्वचालित रूप से निर्मित इंडेक्स
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY, -- PRIMARY KEY index
email VARCHAR(255) UNIQUE -- Index automatically created by UNIQUE constraint
);
मैन्युअली निर्मित इंडेक्स
CREATE INDEX idx_email ON users(email);
B-Tree, Hash, और FULLTEXT इंडेक्स के बीच कैसे चुनें?
| Index Type | Characteristics | Typical Use Case |
|---|---|---|
| B-Tree Index | Supports range searches | WHERE clauses, ORDER BY, JOIN |
| Hash Index | Exact match only (=) | High-speed lookups |
| FULLTEXT Index | Designed for text searching | Article search, full-text blog search |
इंडेक्स का आकार कैसे जांचें?
SHOW TABLE STATUS LIKE 'users';
इंडेक्स का उपयोग हो रहा है या नहीं, कैसे जांचें?
EXPLAIN SELECT * FROM users WHERE email = 'example@example.com';
इंडेक्स कब हटाना चाहिए?
| Indexes to Remove | Reason |
|---|---|
| Unused indexes | Wastes memory |
| Duplicate indexes | Redundant if similar indexes already exist |
अनावश्यक इंडेक्स हटाएं
ALTER TABLE users DROP INDEX idx_unused;
8. सारांश
इस लेख में, हमने MySQL इंडेक्स को व्यापक रूप से कवर किया—मूलभूत से लेकर सत्यापन विधियों, प्रबंधन, अनुकूलन, और अक्सर पूछे जाने वाले प्रश्नों तक। यहां, हम प्रत्येक अनुभाग से मुख्य बिंदुओं की समीक्षा करते हैं और MySQL इंडेक्स प्रबंधन को अनुकूलित करने के लिए सर्वोत्तम प्रथाओं का सारांश देते हैं।
मुख्य निष्कर्ष
MySQL इंडेक्स क्या है?
- इंडेक्स एक तंत्र है जो डेटा पुनर्प्राप्ति को तेज करता है।
- कई प्रकार हैं, जिनमें B-Tree, Hash, और FULLTEXT इंडेक्स शामिल हैं।
- WHERE क्लॉज, JOINs, और ORDER BY में उपयोग की जाने वाली कॉलम पर लागू करने पर सबसे प्रभावी।
MySQL इंडेक्स कैसे जांचें
- इंडेक्स सूची देखने के लिए
SHOW INDEXकमांड का उपयोग करें। - विस्तृत जानकारी प्राप्त करने के लिए
INFORMATION_SCHEMA.STATISTICSका उपयोग करें।
इंडेक्स उपयोग कैसे जांचें
- क्वेरी द्वारा उपयोग किए जाने वाले इंडेक्स देखने के लिए
EXPLAINका उपयोग करें। - इंडेक्स उपयोग की आवृत्ति का विश्लेषण करने के लिए Performance Schema का उपयोग करें।
इंडेक्स प्रबंधन
- उपयुक्त कॉलम पर इंडेक्स लागू करने के लिए
CREATE INDEXका उपयोग करें। - अनावश्यक इंडेक्स हटाने के लिए
ALTER TABLE DROP INDEXका उपयोग करें। SHOW TABLE STATUSसे इंडेक्स आकार जांचें और आवश्यकतानुसार अनुकूलित करें।
इंडेक्स अनुकूलन (प्रदर्शन सुधार)
- अक्सर उपयोग की जाने वाली WHERE, JOIN, और ORDER BY कॉलम पर इंडेक्स लागू करें।
- धीमी क्वेरी लॉग का उपयोग करके धीमी क्वेरी की पहचान करें और अनुकूलित करें।
- सांख्यिकी अपडेट करने के लिए
ANALYZE TABLEऔरOPTIMIZE TABLEका उपयोग करें।
MySQL इंडेक्स प्रबंधन की सर्वोत्तम प्रथाएं
- इंडेक्स लागू करने से पहले क्वेरी की बाधाओं की पहचान करें।
- उपयुक्त इंडेक्स चुनें।
- एकल-कॉलम और संयुक्त इंडेक्स का सही उपयोग करें।
- वहां जहां अद्वितीयता प्रतिबंध आवश्यक हैं,
UNIQUE INDEXका उपयोग करें।
- नियमित रूप से अनावश्यक इंडेक्स हटाएं।
SHOW INDEXऔरschema_unused_indexesका उपयोग करके अप्रयुक्त इंडेक्स की पहचान करें।
- नियमित रूप से सांख्यिकी अपडेट करें।
- सांख्यिकी अपडेट करने के लिए
ANALYZE TABLEका उपयोग करें। - डिलीट और अपडेट से उत्पन्न विखंडन को हल करने के लिए
OPTIMIZE TABLEचलाएं।
अगले कदम
✅ व्यावहारिक चेकलिस्ट
✅ SHOW INDEX का उपयोग करके वर्तमान इंडेक्स जांचे हैं?
✅ धीमी क्वेरी लॉग सक्षम किया है और धीमी क्वेरी की पहचान की है?
✅ EXPLAIN का उपयोग करके क्वेरी निष्पादन योजना का विश्लेषण किया है?
✅ अनावश्यक इंडेक्स हटाए हैं और उपयुक्त इंडेक्स बनाए हैं?
✅ ANALYZE TABLE का उपयोग करके सांख्यिकी अपडेट की है?
अंतिम सारांश
- उचित रूप से प्रबंधित MySQL इंडेक्स खोज प्रदर्शन को काफी सुधारते हैं।
- धीमी क्वेरी लॉग और EXPLAIN का उपयोग करके इंडेक्स प्रभावशीलता का विश्लेषण करें और उसी के अनुसार अनुकूलित करें।
- सांख्यिकी को नियमित रूप से अपडेट करके और तालिकाओं को अनुकूलित करके डेटाबेस प्रदर्शन बनाए रखें।
यह MySQL इंडेक्स प्रबंधन का पूरा गाइड समाप्त करता है।
इस ज्ञान का उपयोग तेज और अधिक कुशल डेटाबेस सिस्टम बनाने के लिए करें। 💡🚀


