【问题标题】:Airflow Adaptive Server connection failedAirflow Adaptive Server 连接失败
【发布时间】:2019-08-19 07:17:38
【问题描述】:

我想连接我的 Airflow 和 Microsoft SQL Server。我在“管理”框中的“连接”栏下配置了我的连接,如以下链接中所述: http://airflow.apache.org/howto/manage-connections.html

但是当我运行与 SQL 服务器相关的 Dag 任务时,由于以下错误而立即失败:

[2019-03-28 16:16:07,439] {models.py:1788} ERROR - (18456, "Login failed for user 'XXXX'.DB-Lib error message 20018, severity 14:\nGeneral SQL Server error: Check messages from the SQL Server\nDB-Lib error message 20002, severity 9:\nAdaptive Server connection failed (***.***.***.28:1433)\n")

我来自 DAG 的用于 Microsoft Sql Connection 的代码如下:

sql_command = """
select * from [sys].[tables]
"""
t3 = MsSqlOperator( task_id = 'run_test_proc',

                    mssql_conn_id = 'FIConnection',

                    sql = sql_command,

                    dag = dag)

我通过本地计算机上的 pymssql 库建立连接来验证 IP 地址和端口号类型的配置。测试代码如下:

pymssql.connect(server="***.***.***.28:1433",
                    user="XXXX",
                    password="XXXXXX"
                    ) as conn:
                    df = pd.read_sql("SELECT * FROM [sys].[tables]", conn)
                    print(df)

如果你遇到过这个问题,可以分享一下吗?

顺便说一下,我在 Ubuntu 16.04 LTS 中使用 VirtualBox

【问题讨论】:

  • 听起来你需要检查用户名/密码组合。
  • 我在我的 pymssql 测试中尝试使用相同的用户名和密码组合,它有效。出于安全原因,我将其更改为 xxxx :)
  • 当然你不会在这里发布真正的价值。关键是错误消息告诉您用户无法使用提供的凭据进行连接。用户存在吗?您是否仔细检查了用户名和密码?
  • 抱歉造成误会。是的,我检查了很多次用户名和密码,正如我上面所说的,我检查了在我的 python 脚本上使用相同的值登录。
  • 你好 Nihad,你能发布你的修复吗?上面指定的数据库名称在哪里?提前致谢。巴拉特

标签: sql sql-server airflow


【解决方案1】:

我遇到了同样的问题,因为 linux 上缺少 freetds-dev:

apt-get install freetds-dev

【讨论】:

    猜你喜欢
    • 2022-12-24
    • 2016-07-13
    • 1970-01-01
    • 2013-12-10
    • 2016-09-09
    • 2019-11-09
    • 2017-02-15
    • 2014-09-13
    • 2017-07-22
    相关资源
    最近更新 更多