Airflow调度程序错误- MySQL OperationalError 2006,“无法连接到MySQL服务器
import pymysql
# 连接MySQL数据库
conn = pymysql.connect(
host='',
user='',
password='',
charset='utf8mb4',
cursorclass=pymysql.cursors.DictCursor
)
# 测试连接是否成功
try:
conn.ping()
print("连接成功")
except Exception as e:
print("连接失败:", str(e))
finally:
conn.close()
在Airflow的配置文件中(通常位于~/airflow/airflow.cfg
),找到以下配置项并确保其值正确:
sql_alchemy_conn = mysql+pymysql://:@:/
确保MySQL服务器的防火墙允许来自Airflow调度程序所在主机的连接。如果需要,请添加防火墙规则来允许来自调度程序主机的MySQL连接。
在MySQL服务器配置文件(通常是/etc/mysql/my.cnf
)中,找到以下配置项并确保注释掉或修改为允许远程连接:
# bind-address = 127.0.0.1
重启MySQL服务器以使更改生效。
如果MySQL服务器的资源已耗尽或出现其他故障,可能会导致无法连接。请确保MySQL服务器正常运行并且没有负载过重的情况。
这些是一些常见的解决方法,可以帮助您解决Airflow调度程序错误- MySQL OperationalError 2006,“无法连接到MySQL服务器