2017-04-10 487 views
3

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

菜单 - >来源 - >数据库 - >添加

在SQLAlchemy的URI场,我进入:

mssql+pymssql://user:[email protected]: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

谢谢!

+0

你有没有得到这个工作? – Bob

回答

0

请尝试MSSQL://用户名:密码@主机:端口/数据库

+0

嗨,谢谢你的回答。我试过了,现在有这个错误: “错误:{”错误“:”连接失败! 返回的错误消息是: (pyodbc.Error)('IM002','[IM002] [unixODBC] [驱动程序管理器]未找到数据源名称,未指定默认驱动程序(0)(SQLDriverConnect)')“} “ 以前我在Linux上安装了SQL Server的ODBC驱动程序(https://docs.microsoft.com/en-us/sql/connect/odbc/linux/installing-the-microsoft-odbc-driver-for-sql -server-上的Linux)。我也安装了pyodbc。再次感谢您:) – LaPalme

+0

您需要在连接字符串中指定驱动程序名称。请参阅http://docs.sqlalchemy.org/en/latest/dialects/mssql.html#hostname-connections – wchatx

2

什么工作对我来说是这样的:

mssql+pymssql://user:[email protected]/?charset=utf8 

但是,我没使用定义数据库这个语法,反过来也不能定义/查找可用的表。

+0

谢谢Dror,但它也失败了。我确信有司机的问题。我需要一个用于python的等效jTDS驱动程序,以便从我的RHEL虚拟机连接到具有Windows身份验证的SQL Server。也许你听说过这样一个司机? – LaPalme

+0

我不知道...你在用什么操作系统? – Dror

+0

我正在使用红帽企业Linux 2.7-11 – LaPalme