由于数据库连接错误,我的服务器昨晚被卡住了。 我调查它是由太多的数据库连接引起的。经过谷歌和stackoverflow的研究后,我没有得到任何有用的信息。虽然我试图逐一调查所有插件,看看是否有任何错误或其他事情,我想问你的帮助..
首先,当我登录MySQL时,我可以看到很多带有NULL信息的SLEEP查询。我尝试使用命令行来终止所有睡眠查询,但还有更多请求立即填满所有连接。
奇怪的是,apache服务器实际上并没有获得高额请求。我实际上使用AWS RDS作为我的数据库服务器,因此apache和mysql不在同一台服务器上。 RDS服务器没有公共访问权限,因此我确信所有请求都只来自我的apache服务器。 apache服务器上的cpu使用率不高。另外,我搜索了apache的access_log,当时没有很多请求。而且我发现这些请求没有任何问题。特别是没有请求正在执行注入攻击。我认为有可能在代码中触发了一些事情,所以我在我的所有代码中搜索了'SLEEP',但只能在w3总缓存插件中找到一些,这个插件中的代码块不容易到达..我关闭了apache级别的XML-RPC因此不应该是XML-RPC攻击。
我知道有很多可能,因为我在我的网站中使用了大约20个插件,但是真的很奇怪我找不到任何可能的请求导致这个在apache级别上。任何请求都可以在没有记录在access_log中的情况下命中服务器吗?
我自己配置apache和mysql并且还在学习这些功能,我很新。请提前帮助我!