我想对当前位于 aws rds 上的 mysql 数据库进行一些临时查询。我在 Airflow UI 上创建了与所有必要凭据的连接,但是数据库没有显示在 Data Profiling>Ad hoc Query 部分下。
任何帮助表示赞赏。谢谢!
对于最初的问题,OP 可能只需要安装一个 python-mysql 适配器。
我刚刚遇到了类似的问题。
对我来说,这个问题是由于我的系统上缺少依赖项。
当我试图连接到 Postgres 数据库时,我安装了 python-postgres 适配器,psycopg2:
pip install psycopg2
我重新启动了 Airflow Web 服务器,并且 Postgres 连接开始在 Ad Hoc Query 下拉列表中填充。
这是我如何确定这个问题的。
我在尝试连接到 RDS Postgres 服务器时遇到了同样的问题,该问题出现在 AdHoc 查询下拉列表中。复制现有的 后sqlite_default connection,下拉菜单似乎只包含 Sqlite 连接。这是使用近乎普通的默认 Airflow 配置。似乎连接未列出,因为db.get_hook()返回None.
更深入地研究代码,我能够识别出from airflow.hooks.postgres_hook import PostgresHook失败并出现如下错误:
*** ImportError: No module named 'psycopg2'
使用交互式 Python 调试器(例如 Pdb、via import pdb; pdb.set_trace()),OP 可能会发现类似的错误消息,即:
(Pdb) from airflow.hooks.mysql_hook import MySqlHook
*** ImportError: No module named 'MySQLdb'
小智 0
希望这个问题现在必须得到解决。我按照这些步骤操作,并且能够在数据分析下运行即席查询。
在“管理”选项卡下创建了一个新连接。
定义的 Conn ID {任何合适的名称}
连接类型——MySQL
主机名 -- AWS RDS 上 MySQL 的集群端点
schema——创建airflow表的MySQL schema。
登录名/密码——如创建数据库时所定义
port --3306 保存以上设置。
现在移至“数据分析”选项卡,新连接将可用。
| 归档时间: |
|
| 查看次数: |
8576 次 |
| 最近记录: |