Percona 5.6高内存使用率

时间:2013-10-24 15:29:46

标签: mysql linux percona

我不确定堆栈是否适合提出这个问题,但我最近从5.5升级到Percona 5.6并且我的内存使用率暴涨!

这是来自PS:

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

我正在使用专用的VSS

我的服务器只有一个ram的演出...根据PS,这个唯一的内存使用率仅为30%?

我的配置中的ram设置小于此值,当我运行MySQLTuner时,我得到:

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

那么我如何使用近500MB的物理内存和超过一半的虚拟内存?

这是mySQL中的错误还是我服务器的错误?

3 个答案:

答案 0 :(得分:8)

发现在mysql 5.6中,performance_schema默认开启。它在5.5之前和之前默认禁用。它自5.6.6起已默认启用

performance_schema = off到我的配置文件修复了这个问题。

我想任何没有内存运行performance_schema的人都不会使用它。

这可能会影响mysql 5.6.6的其他发行版。

答案 1 :(得分:2)

我遇到了这个问题,并在MySQL.ini中修复了一些(增加的)缓存值,将问题排除在外。

table_definition_cache - 设置为400

从“http://bugs.mysql.com/bug.php?id=68287”开始讨论

  

是的,有基于table_open_cache和table_definition_cache和max_connections的阈值,超过阈值会导致RAM使用量大幅增加。阈值的工作原理是首先确定服务器大小是小,中还是大。

     

小:所有三个都与默认值相同或更小(2000,400,151)。   大:三者中的任何一个都是默认值的两倍多。   中:其他。

从记忆中。我的设置为2000+并且将它排除在问题之外。

答案 2 :(得分:0)

在CentOS上帮助我的是改变内存分配器:

yum install jemalloc-devel

并添加到my.cnf:

[mysqld_safe]

malloc-lib = /usr/lib64/libjemalloc.so.1
相关问题