气流mysql_hook没有名为“MySQLdb”的模块
我有
没有名为“MySQLdb”的模块
导入 ariflow 时
从airflow.hooks.mysql_hook 导入MySqlHook
我使用的是 Mac,python 3.7.6
已安装
- pip 安装 'apache-airflow[mysql]'
- pip 安装 apache-airflow
- PyMySQL==0.10.1
- 棉花糖-sqlalchemy == 0.23.1
- mysql-connector-python==8.0.22
- mysql客户端==1.3.14
除了这个特定的问题,我们有一台服务器安装了气流,我试图在没有完整气流环境的情况下测试一些气流组件(钩子等),这可行吗?
谢谢!
回答
您没有使用更新的MySqlHook.
因为Airflow <2.0您需要安装backport 提供程序:
pip install apache-airflow-backport-providers-mysql
因为Airflow >=2.0你需要安装提供者:
pip install apache-airflow-providers-mysql
然后你可以通过以下方式导入钩子:
from airflow.providers.mysql.hooks.mysql import MySqlHook
至于你的第二个问题,我不确定你所说的全气流环境是什么意思。例如,提供程序从 Airflow 核心中删除到分离的包中。