1 मिल रिकॉर्ड वाली तालिका के साथ समस्या AND id > 34000 LIMIT 10
नहीं होगी या LIMIT 34000, 10
जो संरचना और शेष क्वेरी तक होगा। यानी, आपको क्वेरी को गति देने के लिए इंडेक्स, पीके, एफके की आवश्यकता है, इसके अलावा एक ऑर्डर शायद इसे धीमा कर देगा, खोज करें like '%text%'
यह आपकी क्वेरी को धीमा कर देगा। साथ ही यह टेबल के इंजन पर निर्भर करता है
इसलिए यह उम्मीद न करें कि सीमा 10 बदलने से बहुत बड़ा फर्क पड़ेगा। ऐसे कुछ टूल हैं जो आपको 'बेहतर' क्वेरी निर्धारित करने में मदद करेंगे, लेकिन सभी क्वेरी एक समान काम नहीं करती हैं इसलिए "सर्वश्रेष्ठ समाधान" की अपेक्षा न करें क्योंकि यह मौजूद नहीं है।
आप create table
दिखाएँ का उपयोग कर सकते हैं या Describe select ......
या explain
यह देखने के लिए कि क्या हो रहा है, या कमांड का उपयोग करें benchmark
किसी फ़ंक्शन का अनुमानित समय देखने के लिए जिसे आप इसे सुधारने के लिए लागू कर रहे हैं
संपादित करें:
MySQL के लिए कुछ टूल मैं आपको इस प्रोग्राम पर एक नज़र डालने की सलाह दूंगा जो आपको प्रदर्शन के इस हिस्से में मदद करेगा।
- Mysqlslap (यह बेंचमार्क की तरह है लेकिन आप परिणाम को और अधिक अनुकूलित कर सकते हैं)।
- SysBench (परीक्षण CPU प्रदर्शन, I/O प्रदर्शन, म्यूटेक्स विवाद, स्मृति गति, डेटाबेस प्रदर्शन)।
- Mysqltuner (इससे आप सामान्य आंकड़ों, स्टोरेज इंजन सांख्यिकी, प्रदर्शन मीट्रिक का विश्लेषण कर सकते हैं)।
- एमके-क्वेरी-प्रोफाइलर (एसक्यूएल स्टेटमेंट का विश्लेषण करें)।
- mysqldumpslow (यह जानना अच्छा है कि डायन प्रश्न समस्याएं पैदा कर रहे हैं)।