这点需要从LINUX系统的 malloc()内存分配函数来说起, LINUX 将内存分配给MYSQL 通过 malloc() 函数, 而malloc() 函数是不会将内存在进行FREE 的回收的,所以说...这个问题这里分为三个层次
1 innodb buffer pool size 分配的不合理, 具体innodb buffer pool size 应该配置成多少 是内存的 60% 还是 80% ...这就的看第二个问题
2 你到底有多少连接在并发,并且这些连接使用的内存大概是多少, 你的机器上是否是单一的MYSQL 数据库服务器还是,混杂了其他的应用服务,他们占用的内存是多少.
3 MYSQL 的内存泄漏了...就需要用更深层的方式来判断,到底是那个程序的内存在泄漏了.
4 到底MYSQL的内存是怎么分配的,怎么看?...,使用的内存是多少等等.
5 对于 innodb_numa_interleave 参数在大内存的MYSQL 中是否有必要打开?