Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql Percona 5.6高内存使用率_Mysql_Linux_Percona - Fatal编程技术网

Mysql Percona 5.6高内存使用率

Mysql Percona 5.6高内存使用率,mysql,linux,percona,Mysql,Linux,Percona,我不确定stack是否适合问这个问题,但我最近从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上 我的服务器只有1G的ram…根据PS的数据,这是怎么唯一的内存

我不确定stack是否适合问这个问题,但我最近从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上

我的服务器只有1G的ram…根据PS的数据,这是怎么唯一的内存使用率只有30%的呢

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

[OK] Maximum possible memory usage: 338.9M (22% of installed RAM)
那么,我如何使用近500MB的物理内存和超过1.5亿的虚拟内存呢


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

我遇到了这个问题,在mySQL.ini中修复了一些(增加的)缓存值,解决了这个问题

表\u定义\u缓存-设置为400

从“”开始讨论此问题

是的,存在基于表\u open\u缓存和表\u definition\u缓存以及max\u连接的阈值,超过这些阈值会大大增加所使用的RAM。阈值首先决定服务器大小是小、中还是大

小:所有三个都等于或小于默认值(2000、400、151)。 大:三者中的任何一个都是默认值的两倍以上。 中等:其他


从记忆中。我的设置为2000+,删除它就解决了问题。

发现在mysql 5.6中,默认情况下性能模式是打开的。在5.5及之前的版本中,默认情况下已禁用。自5.6.6起默认启用

我的配置文件的performance\u schema=off修复了该问题

我可以想象,任何没有内存运行performance_schema的人都不会使用它


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

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

yum install jemalloc-devel
并添加到my.cnf:

[mysqld_safe]

malloc-lib = /usr/lib64/libjemalloc.so.1

使用Pmap,我发现了罪魁祸首,有两个巨大的ANON内存分配发生,我不知道为什么00007fb73b65c000 403088K rw---[ANON]00007FB731C2A0000 155748K rw---[ANON]无论如何,我要弄清楚为什么要分配这个内存?这是MySQL 5.6特有的。有关MySQL 5.7及更高版本,请参见此处: