Superset无法连接到我的MSSQL数据库

时间:2017-04-10 12:12:16

标签: python sql-server sqlalchemy airbnb superset

在我的虚拟机(RHEL,Linux 7.2-11)上安装Superset(Airbnb的开源软件)之后,我无法在配置页面中添加我的MSSQL数据库。

表 - >来源 - >数据库 - >添加

在SQLAlchemy URI字段中,我输入了:

mssql+pymssql://user:password@host:port/database

显然,用我的用户,密码,主机,端口和数据库名称。

但是当我点击“测试连接”时,我有以下错误:

ERROR: {"error": "Connection failed!
The error message returned was:
(pymssql.OperationalError) (18456, 'DB-Lib error message 20018, severity 14:\
General SQL Server error: Check messages from the SQL Server\
DB-Lib error message 20002, severity 9:\
Adaptive Server connection failed (host:port)')"}

我已经安装了pymssql包,我真的不知道这个错误可能来自哪里。 如果您有任何想法或者您已经解决了这个问题,请告诉我。 我试着按照这些教程,但也许我做错了:

http://airbnb.io/superset/installation.html

http://airbnb.io/superset/tutorial.html#connecting-to-a-new-database

谢谢!

3 个答案:

答案 0 :(得分:2)

对我有用的是:

mssql+pymssql://user:pass@address.of.db/?charset=utf8

但是,我没有设法使用这种语法定义数据库,反过来也无法定义/找到可用的表。

答案 1 :(得分:0)

请尝试使用mssql:// user:password @ host:port / database

答案 2 :(得分:0)

我在连接MSSQL时也遇到了问题。我在macOS Catalina上。我采取了以下步骤,并且有效:

  1. 简单安装msodbcsql17 mssql-tools(请参阅:https://docs.microsoft.com/en-us/sql/connect/odbc/linux-mac/install-microsoft-odbc-driver-sql-server-macos?view=sql-server-ver15
  2. pip安装pyodbc
  3. mssql + pyodbc:// UserName:Password @ HostIP,Port / DBName?driver =用于SQL Server的ODBC驱动程序17

最后提到“ driver = SQL Server的ODBC驱动程序17”的提法很重要。 (请参阅:https://stackoverflow.com/a/51266453/13150101