我正在运行一个 2GB Centos 5.9 服务器,采用标准 LAMP 设置。我正在运行一个 wordpress 网站,因此对性能要求不高。
但是,当我尝试访问我的 wordpress 网站时,MySQL 服务器似乎一直在崩溃,因为出现“连接数据库错误”的情况。我检查了 CPU,发现它以 100% 的负载运行,RAM 也以 100% 的负载运行。
我试过了
服务 mysqld 重启
大约 10 分钟后一切恢复正常,然后再次崩溃。
我也尝试调整 my.cnf 文件和 httpd.conf 文件,但并没有解决问题。
当我跑步时
netstat -ntu | awk'{print $5}'| cut -d':'-f1 | grep“^[0-9]”| sort -g | uniq -c
我得到以下输出:
1 31.222.135.11 1 50.56.142.152 1 50.57.61.11 1 78.136.44.13 2 78.19.241.93 201 127.0.0.1
为什么我的环回地址上有 201 个连接?提前感谢您的帮助。
答案1
首先,您应该检查是否能够通过 mysql 客户端直接连接到 MySQL 服务器。以防您已达到最大连接数或存在其他服务器问题(内存不足、磁盘损坏等)
如果你能够直接与数据库对话,你应该检查数据库的进程列表,看看是否有任何东西需要花费太多时间运行等等
检查你的 MySQL 的错误日志。
最后,检查 apache2 php.ini 是否启用了以下内容(如果问题出在数据库连接过多):
mysql.allow_persistent = On
mysql.max_persistent = -1
mysql.max_links = -1