首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >airflow使用MySQL数据库(第三方数据库详解)

airflow使用MySQL数据库(第三方数据库详解)

作者头像
营琪
发布2020-02-18 16:13:13
发布2020-02-18 16:13:13
3.7K00
代码可运行
举报
文章被收录于专栏:营琪的小记录营琪的小记录
运行总次数:0
代码可运行

airflow 是一个python写的调度平台,大致的认识是 : 定义一些任务(脚本、命令、连接...),airflow调度平台可以自动去运行,后面会给出运行日志(UI界面)等,这个UI界面(WEB端)有一些复杂的分析图谱,可以做的事情就很多了。

下面是介绍airflow使用非默认的数据库,默认是SQLite ,官方的介绍不够仔细,这篇是个人总结。

官方地址:http://airflow.apache.org/docs/stable/installation.html

一、登陆MySQL、创建数据库、创建用户密码、更新策略

代码语言:javascript
代码运行次数:0
运行
复制
mysql> create database airflow;
mysql> GRANT all privileges on airflow.* TO 'airflow'@'%' IDENTIFIED BY 'xE!D95Exxx';
mysql> FLUSH PRIVILEGES;

二、设置MySQL对null的处理,重启服务器(可有可无)

代码语言:javascript
代码运行次数:0
运行
复制
mysql> set explicit_defaults_for_timestamp = 1;

重启服务器(可有可无)
[root@VM_0_16_centos airflow]# systemctl restart mysqld

这个设置是官方文档提出的,下面是一篇文章关于此属性的介绍:https://www.jianshu.com/p/dfa0380eb6b9

三、对airflow配置文件(airflow.cfg)的设置

代码语言:javascript
代码运行次数:0
运行
复制
#打开你安装airflow的文件夹
[root@VM_0_16_centos airflow]# vim ~/airflow/airflow.cfg

#设置两个属性
The executor class that airflow should use. Choices include
# SequentialExecutor, LocalExecutor, CeleryExecutor, DaskExecutor, KubernetesExecutor
#executor = SequentialExecutor
executor = LocalExecutor

# The SqlAlchemy connection string to the metadata database.
# SqlAlchemy supports many different database engine, more information
# their website
sql_alchemy_conn = mysql+pymysql://airflow:vE!D95E2^z@127.0.0.1/airflow


#注意pymysql库是否安装
[root@VM_0_16_centos airflow]# pip3 install pymysql

一些小坑提示:数据库连接路径要注意是否还是使用mysql的驱动 ,现在已经使用pymysql,没有安装会报错,找不到驱动。

四、重置数据库、初始化数据库

代码语言:javascript
代码运行次数:0
运行
复制
[root@VM_0_16_centos airflow]# airflow resetdb
[root@VM_0_16_centos airflow]# airflow initdb
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档