气流 2.4.3
我删除并创建了一个新数据库并发布了 airflow db init 由于缺少一些表格而出现以下错误,
我怎样才能克服这个错误 [2022-11-29 14:46:48,449] {migration.py:204} 信息 - 上下文实现 MySQLImpl。 [2022-11-29 14:46:48,450] {migration.py:207} INFO - 将采用非事务性 DDL。 ..... ... ....
File "/opt/airflow_test/az/airflow_env/lib64/python3.8/site-packages/sqlalchemy/sql/schema.py", line 2373, in column
raise exc.NoReferencedTableError(
sqlalchemy.exc.NoReferencedTableError: Foreign key associated with column 'ab_permission_view_role.role_id' could not find table 'ab_role' with which to generate a foreign key to target column 'id'
'ab_permission_view_role.permission_view_id' could not find table 'ab_permission_view'
错误的原因多种多样。我在从 GCP 云迁移实例时遇到了这个错误。我尝试了很多东西,但我会写下我记得的东西。
在airflow.cfg文件中设置的数据库中,首先检查该表是否有外键。
如果已经存在,好像是sqlalchemy版本冲突的问题。 1.4.46 中的 Airflow 2.5.1 已经确认可以正常工作。 (其他版本产生错误)
pip 安装 sqlalchemy==1.4.46
重启。
谢谢