所以我在一个VPC中有2个EC2。一个EC2正在运行气流,另一个EC2正在运行wordpress数据库。
我创建了一个新的Airflow作业,该作业使用MySqlHook连接到wordpress数据库。
mysql_hook = MySqlHook(mysql_conn_id='wp')
但是,当我运行上面的代码时,得到以下响应:
_mysql_exceptions.OperationalError: (2003, "Can't connect to MySQL server on '{PRODHOSTURL}.us-east-1.rds.amazonaws.com' (110)")
我尝试确保有入站规则,允许在wordpress db上进行3306端口连接。我尝试将绑定地址规则添加到mysql的.conf文件中。我已经检查并重新检查了数据库规则。但是没有任何效果。有什么想法吗?
PS airflow ec2有很多工作,其中大部分都连接到同一VPC中的其他数据库...所以我不知道为什么MySql的行为有所不同。我可以使用其他钩子吗?
答案 0 :(得分:0)
我们找到了答案。安全规则不正确。为了进行故障排除,我去了一台机器并运行了命令“ ping {另一台机器的ip地址}”,直到我可以双向访问为止。然后重新运行代码,它可以正常工作。谢谢!