मैंने देखा कि मेरा एक स्क्रिप्ट बहुत धीमा हो गया, फिर मैंने समस्या को संकुचित कर दिया: यह एक अद्यतन क्वेरी थी। अजीब चीज यह है कि चयन क्वेरी बहुत तेज है। तालिका में लगभग 600,000 प्रविष्टियां हैं। और हाँ, आईडी अद्वितीय प्राथमिक कुंजी है।बेहद धीमी अद्यतन क्वेरी
SELECT * FROM `tmp_pages_data` WHERE id = 19080 LIMIT 0 , 30
Showing rows 0 - 0 (1 total, Query took 0.0004 sec)
और अब अद्यतन क्वेरी: कुछ उदाहरण हैं
UPDATE tmp_pages_data SET page_status = 1 WHERE id = 19080
1 row(s) affected. (Query took 24.5968 sec)
आप देख सकते हैं, चुनें बहुत तेजी से है, लेकिन अद्यतन veery धीमी है। यह कैसे संभव है?
कृपया अपने स्कीमा की संरचना, और विशेष रूप से अनुक्रमित जोड़ें। अनुक्रमित आकार और इंजन प्रकार लिखें रूप में अच्छी तरह –
ठीक है, यहाँ कैसे मेज की तरह लग रहा है: टेबल बनाते हैं नहीं 'मौजूद tmp_pages_data' ( ' id' पूर्णांक (10) अहस्ताक्षरित नहीं NULL AUTO_INCREMENT, 'site_id' पूर्णांक (11) डिफ़ॉल्ट शून्य, 'url' varchar (255) डिफ़ॉल्ट शून्य, ' date_added' datetime डिफ़ॉल्ट शून्य, 'page_status' tinyint (4) डिफ़ॉल्ट शून्य, ' page_type' varchar (255) डिफ़ॉल्ट शून्य, 'title_normal' varchar (255) डिफ़ॉल्ट शून्य, 'cat_id' पूर्णांक (11) डिफ़ॉल्ट शून्य, ' title_id' पूर्णांक (11) डिफ़ॉल्ट शून्य, प्राथमिक कुंजी ('id'), कुंजी' url' ('url') ) इंजन = माईसाम डिफॉल्ट चैरसेट = लैटिन 1 ऑटोऑक्रिकमेंट = 658002; – okaybmd
इंडेक्स: प्राथमिक (बीटीआरई) अद्वितीय: हाँ पैक किया गया: नहीं \t फ़ील्ड: आईडी \t कार्डिनालिटी: 658001 कोलालेशन: ए \t शून्य: नहीं; सूचकांक: यूआरएल (BTREE) \t अद्वितीय: नहीं \t पैक: नहीं \t फील्ड: यूआरएल \t प्रमुखता: 658,001 \t मिलान: एक \t अशक्त: हाँ – okaybmd