mysql 实例是第三方 Heroku 插件:JawsDB。
主持人:
s554ongw9quh1xjs.cbetxkdyhwsb.us-east-1.rds.amazonaws.com
命令:
mysqladmin -h s554ongw9quh1xjs.cbetxkdyhwsb.us-east-1.rds.amazonaws.com -P 3306 -u username -p flush-hosts
Mysql 服务器错误:
Host '65.130.48.40' is blocked because of many connection errors; unblock with 'mysqladmin flush-hosts'.
来源
https://chartio.com/resources/tutorials/how-to-run-mysqladmin-flush-hosts-on-amazon-rds/
在这种设置中,刷新远程缓存的直接方法是什么?
答案1
您必须从尚未被阻止的计算机运行该命令。它不必是本地计算机(无论如何,从 RDS 中这是不可能的)。该mysqladmin
实用程序只不过是一个简单的实用程序,它使用普通客户端连接连接到服务器并发出命令,通常是查询,但有时是低级协议操作码——但在每种情况下,它都使用正常连接,因此它不能免于被阻止。
重新启动服务器实例是一种可以在紧急情况下使用的解决方案,尽管这通常会作为最后的努力。
客户端越过max_connect_errors
阈值。您可以考虑在 RDS 参数组中增加此阈值,但这很少是必要的,因为超过阈值通常表示出现了相当严重的错误,需要进行调查。这是一种保护性控制,允许服务器快速关闭似乎损坏或恶意的客户端计算机,从而允许服务器花费最少的资源来处理行为不当的客户端。使用简单/天真的 TCP 连接尝试(实际上不尝试进行身份验证)对 MySQL 服务器进行健康检查也会触发这种情况,因为客户端在建立连接后实际上不会经历预期的握手序列。
对于每次成功的连接,给定主机的计数器都应将自身设置回 0,因此在正常情况下,超过阈值的情况很少见。