2017-04-10 104 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