【问题标题】:airflow.exceptions.AirflowConfigException: error: cannot use sqlite version < 3.15.0airflow.exceptions.AirflowConfigException:错误:不能使用 sqlite 版本 < 3.15.0
【发布时间】:2021-07-25 21:39:14
【问题描述】:

我根据airflow docs 设置了我的气流(2.0.1)postgresql 连接
但是当我尝试使用它时,它告诉我我应该拥有 Sqlite > 3.15.0。在 Centos7 上升级 sqlite 太难了。即便如此,我为什么要使用和需要 sqlite?

(airflow) [root@airflow02 ~]# sudo -u airflow /opt/airflow/bin/airflow db check

错误:

Traceback (most recent call last):
      File "/opt/airflow/bin/airflow", line 5, in <module>
        from airflow.__main__ import main
      File "/opt/airflow/lib/python3.6/site-packages/airflow/__init__.py", line 34, in <module>
        from airflow import settings
      File "/opt/airflow/lib/python3.6/site-packages/airflow/settings.py", line 37, in <module>
        from airflow.configuration import AIRFLOW_HOME, WEBSERVER_CONFIG, conf  # NOQA F401
      File "/opt/airflow/lib/python3.6/site-packages/airflow/configuration.py", line 1007, in <module>
        conf.validate()
      File "/opt/airflow/lib/python3.6/site-packages/airflow/configuration.py", line 209, in validate
        self._validate_config_dependencies()
      File "/opt/airflow/lib/python3.6/site-packages/airflow/configuration.py", line 246, in _validate_config_dependencies
        raise AirflowConfigException(f"error: cannot use sqlite version < {min_sqlite_version}")
    airflow.exceptions.AirflowConfigException: error: cannot use sqlite version < 3.15.0

【问题讨论】:

  • sql_alchemy_conn的内容是什么?您可以使用airflow config get-value core sql_alchemy_conn 检索此信息
  • 嗨@rfkortekaas sql_alchemy_conn = postgresql+psycopg2://airflow:airflow@192.168.206.9/airflow_db
  • 奇怪,如果您查看configuration.py,您会看到它会检查连接字符串中是否存在SQLite。也许在错误行周围添加一些调试打印以查看它失败的原因。

标签: postgresql sqlite sqlalchemy airflow psycopg2


【解决方案1】:

我意识到airflow.cfg 文件不止一个。正如airflow docs 所说:“第一次运行 Airflow 时,它会在 $AIRFLOW_HOME 目录(默认为 ~/airflow)中创建一个名为 airflow.cfg 的文件。

因此,当我启动 Web 服务器并指向 PostgreSQL 配置的 airflow.cfg 时,错误消失了。尽管使用 PostgreSQL 为什么会出现 SQLite 错误,但这没有意义。现在我知道我正在尝试使用另一个不包含 postgresql sql_alchemy_conn 的原始 airflow.cfg 启动网络服务器。原始气流.cfg 包含 SQLite 的默认 sql_alchemy_conn。

【讨论】:

    【解决方案2】:

    请设置 AIRFLOW_HOME。然后你可以防止这个问题。

    导出 AIRFLOW_HOME=~/airflow

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-06-14
      • 2015-02-26
      • 2021-06-26
      • 2014-03-26
      • 2021-10-12
      • 2021-12-17
      • 2019-09-30
      • 1970-01-01
      相关资源
      最近更新 更多