हमारी MySQL धीमी क्वेरी लॉग में, संचयी रूप से सबसे धीमी क्वेरी wp_postmeta के लिए एक सरल अद्यतन है। यहाँ एक उदाहरण है:
UPDATE `wp_postmeta`
SET `meta_value` = '1392835505:386'
WHERE `post_id` = 94705 AND `meta_key` = '_edit_lock';
हमारे सेटअप पर प्रासंगिक विवरण:
- MySQL धीमा क्वेरी समय 1s पर सेट है
- wp_postmeta का स्टोरेज इंजन InnoDB है
- मुख्य WP ब्लॉग पर दसियों हजार पदों के साथ एक बड़े मल्टीसाइट इंस्टॉलेशन के भीतर चल रहा है (जहां ये धीमी गति से पूछताछ हो रही है)
- WP व्यवस्थापक क्षेत्र में उच्च गतिविधि (समवर्ती रूप से काम करने वाले बहुत सारे लेखक / संपादक, लेकिन आम तौर पर अपने दम पर (दूसरों के नहीं) सामग्री)
- WP के सार्वजनिक पक्ष पर कम गतिविधि (वास्तव में मुख्य ब्लॉग से सामग्री की सेवा नहीं)
- धीमे प्रश्न सभी को "_edit_lock" कुंजी का उपयोग करने लगते हैं; समान प्रारूप ("_edit_lock" के अलावा कुंजी का उपयोग करने वाले) की क्वेरी धीमी नहीं लगती है।
ऐसा क्यों है कि यह हमारे सिस्टम पर सबसे धीमी क्वेरी है? क्या यह "संपादित ताले" के WP के विशिष्ट उपयोग के साथ कुछ करना है?
धन्यवाद! :)
अद्यतन: नीचे mysqlsla से आउटपुट:
______________________________________________________________________ 001 ___
Count : 606 (16.83%)
Time : 2257.760468 s total, 3.725677 s avg, 1.00512 s to 84.645869 s max (20.60%)
95% of Time : 1355.289277 s total, 2.357025 s avg, 1.00512 s to 12.343604 s max
Lock Time (s) : 182.502 ms total, 301 μs avg, 29 μs to 157.542 ms max (0.21%)
95% of Lock : 22.882 ms total, 40 μs avg, 29 μs to 57 μs max
Rows sent : 0 avg, 0 to 0 max (0.00%)
Rows examined : 1 avg, 1 to 2 max (0.00%)
Database : xxx_wp
Users :
xxx_wp@localhost : 98.84% (599) of query, 51.03% (1837) of all users
yyy_wp@localhost : 1.16% (7) of query, 0.94% (34) of all users
Query abstract:
SET timestamp=N; UPDATE wp_postmeta SET meta_value = 'S' WHERE post_id = N AND meta_key = 'S';
Query sample:
SET timestamp=1392835506;
UPDATE `wp_postmeta` SET `meta_value` = '1392835505:386' WHERE `post_id` = 94705 AND `meta_key` = '_edit_lock';
SELECT
इस प्रविष्टि? जैसे SELECT * FROM
wp_postmeta `WHERE post_id
= 94705 और meta_key
= '_edit_lock';`?
SELECT * FROM wp_postmeta WHERE meta_key='_edit_lock'
; ?