MySQL 内存不足

MySQL 内存不足

我最近将我的 VPS 从 1 GB RAM 升级到 2 GB,因为 MYSQL 因内存不足而不断崩溃。到目前为止,服务器已经运行良好 3 周。以下内容记录到 /var/log/syslog

Mar 14 17:38:15 u1905598-01 kernel: [2798798.833096] Out of memory: Kill process 1247 (apache2) score 27 or sacrifice child
Mar 14 17:38:15 u1905598-01 kernel: [2798798.834657] Killed process 1247 (apache2) total-vm:455756kB, anon-rss:33872kB, file-rss:21060kB
Mar 14 17:38:15 u1905598-01 kernel: [2798799.084554] init: mysql post-start process (1913) terminated with status 1
Mar 14 17:38:15 u1905598-01 kernel: [2798799.173575] type=1400 audit(1457973495.804:37): apparmor="STATUS" operation="profile_replace" profile="unconfined" name="/usr/sbin/mysqld" pid=1935 comm="apparmor_parser"
Mar 14 17:38:15 u1905598-01 kernel: [2798799.351381] init: mysql main process (1947) terminated with status 1
Mar 14 17:38:15 u1905598-01 kernel: [2798799.351397] init: mysql respawning too fast, stopped

我计划升级到 4 GB RAM,但在此之前我想知道是否有其他方法可以解决这个问题。有没有办法限制 apache 的子进程?这会对网站的其他部分产生什么影响?

更新:

我已将 apache 的 MaxClients 值从 150 降低到 75,并将 MaxKeepAliveRequests 从 100 降低到 75。

我根据以下说明计算了新的 MaxClients 值:https://stackoverflow.com/a/25021700/3067688

这实际上已经修复了服务器崩溃的问题。但现在的问题是,服务器极其很慢。加载每个页面大约需要 25 秒!

如果有人能给我指明正确的方向我将不胜感激!

固定的: 原来我的服务器通过 xmlrpc 收到大量 POST 请求。禁止访问 Wordpress 的 xmlrpc.php 文件解决了所有问题。

谢谢

答案1

原来我的服务器通过 xmlrpc 收到大量 POST 请求。禁止访问 Wordpress 的 xmlrpc.php 文件解决了所有问题。

相关内容