Apache Airflow迁移损坏无法运行standalone模式问题咨询
Airflow 数据库迁移故障修复方案
方案1:手动修复损坏的迁移(适用保留原有数据场景)
- 先终止所有Airflow运行进程:
pkill -f airflow - 找到Airflow使用的SQLite数据库文件,默认路径为
~/airflow/airflow.db,使用sqlite3工具连接数据库:sqlite3 ~/airflow/airflow.db - 执行回滚命令清理遗留的未提交事务:
ROLLBACK; - 删除已经存在的
max_tries字段,避免迁移时重复添加报错:ALTER TABLE task_instance DROP COLUMN max_tries; - 执行
.quit退出SQLite命令行 - 手动执行数据库迁移命令:
airflow db migrate - 执行迁移校验命令确认版本匹配:
airflow db check-migrations,返回迁移头匹配提示后,即可正常执行airflow standalone启动服务
方案2:彻底清理残留文件重装(适用测试环境、无需保留历史数据场景)
之前清理失败大概率是有残留的Airflow依赖包、缓存文件未删除,按以下步骤执行即可:
- 终止所有Airflow相关进程:
pkill -f airflow - 卸载所有Airflow相关安装包:
pip uninstall -y apache-airflow apache-airflow-providers-* - 删除当前用户下所有Airflow相关文件:
rm -rf ~/airflow pip cache purge find ~ -name "*airflow*" 2>/dev/null | xargs rm -rf - 重新执行Airflow安装操作,安装完成后执行初始化命令:
airflow db init - 执行
airflow standalone即可正常启动服务
注意:生产环境操作前请先备份完整的Airflow数据库和配置文件,避免数据丢失
内容的提问来源于stack exchange,提问作者Bartosz Gajda
相关产品推荐
相关产品推荐

