从气流连接postgres db时出错

时间:2017-11-12 09:07:32

标签: sqlalchemy celery airflow apache-airflow airflow-scheduler

使用:

sql_alchemy_conn = db+postgresql://username:xxx@127.0.0.1:5432/airflow 给出错误:

  

sqlalchemy.exc.NoSuchModuleError:无法加载插件:sqlalchemy.dialects:db.postgresql

以及使用时:

sql_alchemy_conn = postgresql+psycopg2://username:xxx@localhost:5432/airflow 我可以运行airlfow webserver -p 8080,但在运行调度程序时:airflow scheduler会抛出错误:

  

ModuleNotFoundError:没有名为' MySQLdb'   enter image description here

我正在使用的软件包版本:

psycopg2==2.7.3.1
sqlalchemy==1.1.15
sqlalchemy-redshift== 0.7.0
apache_airflow=1.8.2
早些时候sql_alchemy_conn = db+postgresql://username:xxx@127.0.0.1:5432/airflow确实对我有用 - 2个月前。我现在不知道问题是什么。

1 个答案:

答案 0 :(得分:7)

最后,以下设置有效:

sql_alchemy_conn = postgresql+psycopg2://scot:tiger@localhost:5432/airflow
celery_result_backend = db+postgres://scot:tiger@localhost:5432/airflow

值得注意的是,airflow.cfg文件中的sql_alchemy_conncelery_result_backend设置的方言+驱动程序不同,尽管它们指向同一个数据库。