2013-10-24 10 views
6

मुझे यकीन नहीं है कि स्टैक यह पूछने के लिए सही जगह है, लेकिन मैंने हाल ही में 5.5 से पेर्कोना 5.6 में अपग्रेड किया है और मेरी मेमोरी उपयोग आसमान से उछल गई है!परकोना 5.6 उच्च मेमोरी उपयोग

यह पी एस से है:

mysql  4598 0.0 29.5 1583356 465312 ?  Sl Oct17 9:07 /usr/sbin/mysqld --basedir=/usr --datadir=/var/lib/mysql --plugin-dir=/usr/lib6 

मैं एक समर्पित वीएसएस

मेरे सर्वर केवल राम की एक गिग ... कैसे यह केवल स्मृति उपयोग पी एस के अनुसार केवल 30% है पर हूँ ?

मैं इस की तुलना में कम होने के लिए config में मेरे राम सेट है, और जब मैं MySQLTuner चलाने मैं मिलता है:

[OK] Maximum possible memory usage: 338.9M (22% of installed RAM) 

तो मैं कैसे उपयोग कर रहा हूँ भौतिक स्मृति की लगभग 500MB और एक गिग और एक आधे से अधिक वर्चुअल का?

क्या यह मेरे सर्वर के साथ mySQL या कुछ में एक बग है?

+0

PMAP का उपयोग कर रहा अपराधियों पाया, 2 बड़ा ANON स्मृति आवंटन कर रहे हैं क्या हो रहा है, और मैं नहीं जानता कि क्यों 00007fb73b65c000 403088K rw --- [anon] 00007fb731c2a000 155748K rw --- [anon] वैसे भी यह पता लगाने की क्यों इस स्मृति अल किया जा रहा है स्थित? – dprogramz

उत्तर

8

पता चला कि mysql 5.6 performance_schema डिफ़ॉल्ट रूप से चालू है। इसे 5.5 और इससे पहले डिफ़ॉल्ट रूप से अक्षम कर दिया गया था। इसे डिफ़ॉल्ट रूप से सक्षम किया गया है क्योंकि 5.6.6

Performance_schema = मेरी कॉन्फ़िगरेशन फ़ाइल पर बंद समस्या को हल करता है।

मैं किसी ऐसे व्यक्ति की कल्पना करूंगा जिसके पास प्रदर्शन_स्केमा चलाने की स्मृति नहीं है, वैसे भी इसका उपयोग नहीं किया जाएगा।

यह mysql 5.6.6 के अन्य distros को भी प्रभावित कर सकता है।

+1

यह MySQL 5.6 के लिए विशिष्ट है। MySQL 5.7 और उसके बाद के लिए यहां देखें: http://mysqlserverteam.com/new-in-mysql-5-7-performance-chechema-scalable-memory-allocation/ –

2

मुझे यह समस्या थी और MySQL.ini में कुछ (बढ़े हुए) कैश मानों को ठीक करने से समस्या हल हो गई।

table_definition_cache - 400

करने के लिए सेट "http://bugs.mysql.com/bug.php?id=68287" कहाँ से यह चर्चा की है

हाँ, वहाँ table_open_cache और table_definition_cache और max_connections और के आधार पर सीमा निर्धारित थ्रेसहोल्ड को पार करने के लिए प्रयोग किया जाता रैम में एक बड़ी वृद्धि का उत्पादन । थ्रेसहोल्ड पहले निर्णय लेते हैं कि सर्वर का आकार छोटा, मध्यम या बड़ा है या नहीं।

छोटा: सभी तीन डिफ़ॉल्ट (2000, 400, 151) से कम या कम हैं। बड़ा: तीन में से कोई भी डिफ़ॉल्ट से दोगुना से अधिक है। मध्यम: अन्य।

स्मृति से। मेरा 2000+ पर सेट किया गया था और इसे छोड़कर समस्या को हल किया गया था।

0

क्या मदद मिली मुझे CentOS पर था स्मृति allocator बदल रहा था:

yum install jemalloc-devel 

और my.cnf में जोड़ें:

[mysqld_safe] 

malloc-lib = /usr/lib64/libjemalloc.so.1 
संबंधित मुद्दे