linux – 在Parallels VM中混淆内存使用

前端之家收集整理的这篇文章主要介绍了linux – 在Parallels VM中混淆内存使用前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个1GB内存的Parallels VPS.好吧,hoster说它有1GB但是我不能把它检查为“free”而其他类似的命令返回13Gb,我猜这是物理内存的大小.

当我执行top命令时,我看到以下输出

如您所见,mysql是一个使用大量RAM(143M)的进程.并且使用的RAM的总大小约为160M.问题是我不能使用更多的内存:如果我扩展一些memore设置(例如,对于MysqL)我得到“内存不足”,“无法分配内存”等.

我有两个猜测:

>我的VPS没有1GB的RAM
>如果你看一下虚拟内存的使用情况,它会更接近1GB.但同时交换大小为零.所有我的虚拟存储在RAM中吗?我期望交换是虚拟内存和RAM使用之间的差异.

任何其他的想法如何我可以为MysqL使用更多的内存(我想使用大约80%的1Gb)?

解决方法

你有一个Virtuozzo(或OpenVZ)VPS – 内存分配的正常规则不适用.假设您的托管服务提供商不是骗你,那么“拥有”1GB内存,只要OpenVZ“hypervisor”允许您分配1GB内存,或者(更可能是基于您对事件的描述)1GB虚拟内存记忆.

仅仅因为你没有在顶部看到任何交换,这并不意味着你的所有数据都在物理内存中 – OpenVZ的规则是不同的(非常非常不同).

如果要为MySQL使用更多内存,则必须减少VM中其他内容使用的内存量.你的最高输出没有列出任何明显的竞争者,但如果你按照内存使用情况对它进行排序,你会更好地了解什么是多余的(并且会给你最好的收益).

顺便说一句,我建议远离你当前的托管服务提供商 – 虽然OpenVZ有它的位置,那个地方不在VPS托管市场.你可能选择它们是因为它们是廉价的提供商,但是你知道为什么它们很便宜–OpenVZ是一个非常有限的平台,它本身就有一些特殊的怪癖.对于“真正的”VPS提供商(使用Xen,KVM,VMWare等的人),你会好得多.

猜你在找的Linux相关文章