[FAQ] 解决MySQL 5.6默认占用内存过大

 

MySQL5.6之后,默认使用内存过大,虚拟机扛不住,VPS扛不住,经过搜索,发现是系统默认的某些参数过于巨大,在小型应用及测试环境可以进行适当调整,以节省内存。

1.  当前环境

l   Centos6.7 X86_64  / Mem 1GB / MySQL 5.6.30 /  InnoDB_buffer_pool_size=200M

2. 未优化前情况

l   MySQL启动前

 

l   MySQL启动后

 

3. 调整参数

l   performance_schema_max_table_instances=2068 / table_definition_cache =1400 / table_open_cache=2000

这些值的太大了,我们调小他们

l   performance_schema_max_table_instances=400 / table_definition_cache =200 / table_open_cache=100

4. 优化后情况

l   调整三个参数后

 

l   减少其他缓存、线程参数后

 

5. 参考链接

http://dev.mysql.com/doc/refman/5.6/en/server-system-variables.html#sysvar_table_definition_cache

http://dev.mysql.com/doc/refman/5.6/en/performance-schema-system-variables.html#sysvar_performance_schema_max_table_instances

posted @ 2016-04-28 14:47  Brandyn  阅读(303)  评论(0编辑  收藏  举报