mysqld.exe在启动WAMP后立即使用大量内存(450 MB)

时间:2015-03-20 19:53:11

标签: php mysql wamp

我使用相同的WAMP版本几个月,从未在内存使用任务管理器列表的顶部看到mysqld.exe。 (它停留在442 664 K)。

问题从今天开始。

我没有碰过my.ini。

今天我所做的就是改变php.ini,(添加xdebug的东西)但是把这个442 MB的所有更改和内存使用量都改回来了。

my.ini(部分)

# The MySQL server
[wampmysqld]
port        = 3306
socket      = /tmp/mysql.sock
key_buffer_size = 16M
max_allowed_packet = 1M
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M


[mysqldump]
quick
max_allowed_packet = 16M


[isamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

[myisamchk]
key_buffer = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

php.ini(我今天进行更改的部分以及有资源限制和内存提及的部分)

;;;;;;;;;;;;;;;;;;;
; Resource Limits ;
;;;;;;;;;;;;;;;;;;;


max_execution_time = 800
max_input_time = 600
max_input_vars = 2500
memory_limit = 512M

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Error handling and logging ;
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

report_memleaks = On


;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;

extension=php_bz2.dll
extension=php_curl.dll
extension=php_com_dotnet.dll
extension=php_fileinfo.dll
extension=php_gd2.dll
extension=php_gettext.dll
extension=php_gmp.dll
extension=php_intl.dll
extension=php_imap.dll
;extension=php_interbase.dll
extension=php_ldap.dll
extension=php_mbstring.dll
extension=php_exif.dll      
extension=php_mysql.dll
extension=php_mysqli.dll
;extension=php_oci8.dll      
;extension=php_oci8_11g.dll   
;extension=php_opcache.dll
;zend_extension=php_opcache.dll
zend_extension="C:\wamp\bin\php\php5.5.12\ext\php_opcache.dll"
extension=php_openssl.dll
;extension=php_pdo_firebird.dll
extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
extension=php_shmop.dll
;extension=php_snmp.dll
extension=php_soap.dll
extension=php_sockets.dll
extension=php_sqlite3.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
extension=php_xmlrpc.dll
extension=php_xsl.dll


;;;;;;;;;;;;;;;;;;;;;;
; Module Settings    ;
;;;;;;;;;;;;;;;;;;;;;;   

[MySQL]
mysql.cache_size = 2000

[opcache]
opcache.memory_consumption=128
;opcache.preferred_memory_model=
;opcache.protect_memory=0


; XDEBUG Extension 
 zend_extension = "c:/wamp/bin/php/php5.5.12/zend_ext/php_xdebug-2.2.5-5.5-vc11.dll"
;[xdebug]
; xdebug.remote_handler=dbgp
; xdebug.remote_mode=req
; xdebug.remote_host=127.0.0.1
; xdebug.remote_port=9000
; xdebug.idekey="netbeans-xdebug"
xdebug.profiler_enable = off
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir = "c:/wamp/tmp"
xdebug.show_local_vars=0
xdebug.max_nesting_level=250
xdebug.var_display_max_depth = 5
xdebug.var_display_max_children = 256
xdebug.var_display_max_data = 1024 

编辑: 两天后,我没有使用MySql,mysqld.exe任务使用~7MB。我不知道原因,我留下这个问题。

1 个答案:

答案 0 :(得分:4)

是的,MySQL的更高版本使用的默认值确实让小家伙感到饥渴,

我已经使用它来减少内存需求,而对MYISAM或INNODB数据库的速度没有任何明显影响。

修改my.ini并在[wampmysqld]部分

中添加此行
[wampmysqld] 
# reduce mem size for MYISAM usage
table_definition_cache = 600

哦,如果您使用的是64位WAMPServer,则会出现一个小问题,请确保[wampmysqld]部分读取[wampmysqld64]以及添加上述行,否则它将无效。