संस्करण 5.1.6 और ऊपर:
<मजबूत>1. MySQL शेल दर्ज करें और निम्न कमांड चलाएँ:
set global slow_query_log = 'ON';
<मजबूत>2. कोई अन्य वांछित विकल्प सक्षम करें। यहां कुछ सामान्य उदाहरण दिए गए हैं:
अनुक्रमणिका का उपयोग करने के बजाय सभी पंक्तियों को पुनः प्राप्त करने के लिए अपेक्षित क्वेरी के लिए लॉग विवरण:
set global log_queries_not_using_indexes = 'ON'
धीमे क्वेरी लॉग का पथ सेट करें:
set global slow_query_log_file ='/var/log/mysql/slow-query.log';
लॉग होने से पहले किसी क्वेरी को चलाने के लिए आवश्यक समय निर्धारित करें:
set global long_query_time = 20;
(default is 10 seconds)
<मजबूत>3. MySQL शेल में प्रवेश करके और निम्न कमांड चलाकर पुष्टि करें कि परिवर्तन सक्रिय हैं:
show variables like '%slow%';
5.1.6 से नीचे के संस्करण:
-
अपने पसंदीदा टेक्स्ट एडिटरvi /etc/my.cnf
के साथ /etc/my.cnf फाइल को एडिट करें। -
"[mysqld]" अनुभाग के अंतर्गत निम्न पंक्ति जोड़ें। आप जो चाहें लॉग फ़ाइल के पथ को बेझिझक अपडेट करें:
log-slow-queries=/var/log/mysql/slow-query.log
<मजबूत>3. आवश्यकतानुसार अतिरिक्त विकल्प सक्षम करें। यहाँ ऊपर से समान रूप से उपयोग किए जाने वाले उदाहरण दिए गए हैं:
लॉग होने से पहले किसी क्वेरी को चलाने के लिए आवश्यक समय निर्धारित करें:
`long_query_time=20
(default is 10 seconds)`
अनुक्रमणिका का उपयोग करने के बजाय सभी पंक्तियों को पुनः प्राप्त करने के लिए अपेक्षित क्वेरी के लिए लॉग विवरण:
`log-queries-not-using-indexes`
<मजबूत>4. MySQL सेवा को पुनरारंभ करें:
service mysqld restart
<मजबूत>5. MySQL शेल में प्रवेश करके और निम्नलिखित को चलाकर पुष्टि करें कि परिवर्तन सक्रिय है:
show variables like '%slow%';
अपडेट करें:1
MySQL डॉक्स के अनुसार, त्रुटि #1193 तब होती है जब आप SQLSTATE के लिए गलत कोड का उपयोग करते हैं।
Message: Unknown system variable %s
और, जैसा कि आप उसी पृष्ठ पर देख सकते हैं, SQLSTATE 99003 परिभाषित नहीं है।
इस लिंक को देखें:
http://dev.mysql.com/doc /refman/5.5/hi/slow-query-log.html
http://dev.mysql.com/doc /refman/5.1/hi/slow-query-log.html