• airflow安装文档


    通过pip 包方式安装 airflow

    pip3 install apache-airflow -i http://mirrors.aliyun.com/pypi/simple/
    

    python3的话需要有pymysql包, 没有的话安装:

    pip3 install pymysql -i http://mirrors.aliyun.com/pypi/simple/
    

    在MySQL上配置airflow相关表

    --创建数据库
    create database airflow;
    --将数据库airflow的所有权限授权airflow用户,密码''且该用户可在任何IP段登录操作
    GRANT all privileges on airflow.* TO 'airflow'@'%' IDENTIFIED BY '你的密码';
    --刷新权限
    FLUSH PRIVILEGES;
    --不配会报错: Exception: Global variable explicit_defaults_for_timestamp needs to be on (1) for mysql
    use airflow;
    set global explicit_defaults_for_timestamp = 1;
    

    vim ~/airflow/airflow.cfg 修改airflow配置文件, 修改以下两项:

    # 改为本地调度器(默认并发调度16)
    executor = LocalExecutor 
    # 配置mysql
    sql_alchemy_conn = mysql+pymysql://airflow:你的密码@127.0.0.1:3306/airflow
    

    初始化数据库

    • 若之前没有初始化

      • airflow initdb
    • 若之前初始化过

      • airflow resetdb

    遇到的一个Bug

    sqlalchemy.exc.InternalError: (pymysql.err.InternalError) (1050, "Table 'dag_stats' already exists")
    [SQL: 
    CREATE TABLE dag_stats (
    	dag_id VARCHAR(250) NOT NULL, 
    	state VARCHAR(50) NOT NULL, 
    	count INTEGER NOT NULL, 
    	dirty BOOL NOT NULL, 
    	PRIMARY KEY (dag_id, state), 
    	CHECK (dirty IN (0, 1))
    )
    
    • dag_stats表已经存在

    • 解决方案:

      use airflow;
      drop table dag_stats;
      
      • 然后再airflow resetdb
  • 相关阅读:
    C# using
    Spring框架
    is
    pycharm破解197
    python安装197
    python3.7.0安装197
    centos7 minimal 安装mysql197
    centos7 minimal 安装 &网络配置197
    ruby安装卸载197
    redis安装 卸载 启动 关闭197
  • 原文地址:https://www.cnblogs.com/ronnieyuan/p/12668485.html
Copyright © 2020-2023  润新知