在Airflow中使用外部postgres数据库时,可能会遇到连接问题。使用以下步骤解决该问题:
1.首先,检查Postgres服务器和端口是否正确,并确保可以从Airflow主机ping通Postgres服务器。
接下来,检查Postgres服务器是否在正确的网络中运行,并且是否在防火墙上打开了正确的端口。
如果您有一个具有外部访问权限的Postgres用户,则请确保Airflow使用该用户进行连接。示例代码如下:
postgres_conn = PostgresHook(postgres_conn_id='postgres_external') conn = postgres_conn.get_conn() cursor = conn.cursor()
telnet 192.168.1.100 5432
如果您成功连接,您会看到以下内容:
Trying 192.168.1.100... Connected to 192.168.1.100. Escape character is '^]'.