airflow mysql_hook Nenhum módulo chamado 'MySQLdb'
eu obtive
Nenhum módulo chamado 'MySQLdb'
ao importar ariflow
from airflow.hooks.mysql_hook import MySqlHook
Estou usando Mac, python 3.7.6
Instalado
- pip install 'apache-airflow [mysql]'
- pip instalar apache-airflow
- PyMySQL == 0.10.1
- marshmallow-sqlalchemy == 0.23.1
- mysql-connector-python == 8.0.22
- mysqlclient == 1.3.14
Além desse problema específico, temos um fluxo de ar instalado no servidor e eu estava tentando testar alguns componentes do fluxo de ar (ganchos, etc.) sem ambiente de fluxo de ar completo, isso é viável?
Obrigado!
Respostas
Você não está usando o atualizado MySqlHook
.
Para Airflow <2.0
você precisará instalar provedores de backport :
pip install apache-airflow-backport-providers-mysql
Para Airflow >=2.0
você precisará instalar provedores :
pip install apache-airflow-providers-mysql
então você pode importar o gancho via:
from airflow.providers.mysql.hooks.mysql import MySqlHook
Quanto à sua segunda pergunta, não tenho certeza do que você entende por ambiente com fluxo total de ar. Os provedores, por exemplo, foram removidos do núcleo do Airflow para pacotes separados.