EC2 上的 MYSQL 服务器有时拒绝连接

EC2 上的 MYSQL 服务器有时拒绝连接

我在 AWS EC2 实例(t2.micro、ubuntu、免费套餐)上托管了一个 MySQL DB。我能够连接到它并存储数据。但大多数时候,我无法通过工作台或我的应用程序连接到它。但我的配置是正确的,因为我有时能够连接到它并存储值。工作台抛出以下错误:在“读取初始通信数据包”时与 MySQL 服务器失去连接,系统错误:104。

该应用程序抛出 ETIMEDOUT 错误。

这里出了什么问题?我也检查了 Cloudwatch 指标,但也没有关于 CPU 信用不足的警告。这个问题已经持续了好几天(在此期间我可以随机连接到数据库)。而且任何地方都找不到关于它的有用信息。

我正在尝试通过本地机器进行连接。该应用程序托管在 Vercel 中。

答案1

由于 EC2 服务器提供的信息有限,

观察结果显示,实例正常运行时间内,连接数为 895,中止连接数为 357。

为了尝试减少连接失败,请考虑您的 EC2 参数组,

net_read_timeout=60  # from 30 seconds for more patience to complete task
connect_timeout=30  # from 10 seconds for more patience to complete task
mysqlx_read_timeout-60  # from 30 seconds just in case. 

我们不知道的事情可能会影响您的时间安排、您的 EC2 运行的可用区域以及您的物理区域是什么? 如果涉及副本,副本的可用区域在哪里?

这些建议适用于您的 EC2 实例。

祝你好运,如需更多帮助,请查看个人资料以获取联系信息和免费实用脚本,以提高服务器查询完成速度。

相关内容