यह मार्गदर्शिका बताएगी कि MySQL में "धीमी क्वेरी" लॉगिंग को कैसे सेट किया जाए ताकि आप यह निर्धारित कर सकें कि कौन से प्रश्न मंदी का कारण बन रहे हैं।
यदि आप एक उत्पादन MySQL सर्वर चलाते हैं या प्रशासित करते हैं, तो यह काफी संभावना है कि यह कभी-कभी थोड़ा धीमा चलता है, और यह पता लगाने के लिए बहुत समय लेने वाला प्रयास हो सकता है। डीबी को धीमा करने वाली क्वेरी को इंगित करने में सक्षम होने के लिए ट्रैक करना मुश्किल हो सकता है। MySQL के पास आपकी मदद करने का एक विकल्प है। यह धीमे प्रश्नों को लॉग करने के विकल्प के साथ आता है। इस तरह जब आप पाते हैं कि आपका डेटाबेस सर्वर सामान्य से धीमा चल रहा है तो आप इस लॉग फ़ाइल को टेक्स्ट एडिटर में खोल सकते हैं और देख सकते हैं कि कौन सी क्वेरी धीमी चल रही हैं। आइए देखें कि इसे कैसे सेट अप करें।
सबसे पहले अपने MySQL सर्वर की कॉन्फ़िगरेशन फ़ाइल खोलें, my.cnf . Linux पर यह /etc . में होना चाहिए निर्देशिका। यह देखने के लिए देखें कि क्या पैरामीटर लॉग-धीमी-क्वेरी पहले ही सेट किया जा चुका है। अगर नहीं, तो इसे कुछ इस तरह सेट करें:
लॉग-धीमी-क्वेरी =/var/log/mysql/mysql-slow.log
किसी क्वेरी को धीमी क्वेरी . माना जाने के लिए फिट होने से पहले आपको समय की लंबाई भी निर्धारित करनी होगी . अपने सर्वर पर मैंने इसे 30 सेकंड के लिए इस तरह सेट किया है:
long_query_time =30
MySQL सर्वर को पुनरारंभ करें, और फिर देखें mysql-slow.log फ़ाइल। जब भी किसी क्वेरी को पूरा होने में 30 सेकंड से अधिक समय लगता है, या जो कुछ भी आप my.cnf . में सेट करते हैं , क्वेरी को mysql-slow.log में लॉग किया जाएगा। अब MySQL क्वेरीज़ को डीबग करना आपके लिए बहुत आसान और तेज़ होना चाहिए। इस फाइल को समय-समय पर जांचना न भूलें। हर कुछ दिनों में एक बार आपको यह फ़ाइल मेल करने के लिए क्रॉन जॉब सेटअप करने में क्या मदद मिल सकती है।