MySQL 是否用完了所有内存?

MySQL 是否用完了所有内存?

我需要帮助来阅读此输出free -m。此服务器总共有 32 GB 的 RAM,但它显示9383已使用和290空闲。其余的似乎在buff/cache。我在此服务器上运行 mysql,我们不时间歇性地出现高 CPU 使用率。我想知道这是否与所有内存都用完了并且正在交换或可能是 MySQL 配置问题有关?

buff/cache 是否意味着 22GB 的 RAM 是空闲的还是已用完?此服务器上唯一运行的是 MySQL,我们每天都会收到大量查询。每小时大约有 600 万个查询。

              total        used        free      shared  buff/cache   available
Mem:          31876        9383         290         216       22203       21840
Swap:         16383        1541       14842

答案1

在您的服务器上,有 22203 MB 的内存用于缓存目的(即:它们未被任何应用程序使用)。由于缓冲区/缓存内存可以立即回收,因此应将其视为“可用”内存。因此,请注意“可用”列:它显示 21840,这与您的实际内存消耗完全一致。

相关内容