我想连接Airflow和Microsoft SQL Server。我在“管理员”框中的“连接”栏下配置了我的连接,如以下链接所述: http://airflow.apache.org/howto/manage-connections.html
但是当我运行与SQL Server相关的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进行Micrososft 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的方式
答案 0 :(得分:0)
我遇到了同样的问题,因为在Linux上缺少freetds-dev:
apt-get install freetds-dev