table_cache
बदलने के लिए सबसे उपयोगी विन्यास निर्देश है। हर बार जब MySQL एक टेबल तक पहुंचता है, तो यह टेबल को कैश में लोड करता है। यदि आपको अधिक संख्या में टेबल मिल गए हैं, तो उन्हें कैश करना तेज़ हो गया है।
अपने सर्वर चर पर एक नज़र डालें:
show status;
और चर के लिए एक नज़र है open_tables
। यदि यह आपके table_cache
मूल्य के समान है , और opened_tables
ऊपर जा रहा है, तो आपको table_cache
अपनी कॉन्फ़िगरेशन फ़ाइल में मान बढ़ाने की आवश्यकता है । आपको पीक समय के दौरान इन चरों के साथ प्रयोग करके एक संतुलन मिलेगा। आप इसे कॉन्फ़िगर करना चाहते हैं ताकि पीक समय पर, opened_tables
सर्वर लंबे समय तक रहने के बाद भी कम मात्रा में हो।
key_buffer_size
के साथ प्रयोग करने के लिए एक अच्छा चर भी है। यह चर सूचकांक बफर के आकार को प्रभावित करता है, और इस चर को बड़ा करने से MySQL की सूचकांक हैंडलिंग गति बढ़ जाती है। आप चर को show variables;
फिर से कमांड के साथ देख सकते हैं , और तुलना key_read_requests
कर सकते हैं key_reads
। आदर्श रूप से, आप चाहते हैं कि इन दोनों चरों के बीच का अनुपात यथासंभव कम हो, और आप इसका आकार बढ़ाकर ऐसा कर सकते हैं key_buffer_size
। यदि आप इस चर को उच्चतर सेट करते हैं, तो आपके पास डिस्क से सीधे और कम से कम लिखना और पढ़ना होगा, जो आपकी मुख्य चिंता थी।
show status;
स्टेटस वैरिएबल जैसेOpen_tables
और देखने के लिए हैOpened_tables
।table_cache
प्रतीत होता है कि हाल ही के MySQL संस्करणों में हटा दिया गया है।