自從Sonarqube 5.2發佈以來,不再支持jTDS JDBC驅動程序。我們使用這個驅動程序連接到我們的SQLServer實例,但是我們必須切換到Microsoft SQLServer驅動程序。我們在Ubuntu上運行Sonarqube,並使用Active Directory帳戶連接到SQLServer數據庫。由於我們在Ubuntu上運行,因此我們無法使用集成安全性,因此必須在Sonarqube的JDBC配置中提供憑據。這將導致以下屬性:Sonarqube 5.2 SQLServer連接
sonar.jdbc.url=jdbc:sqlserver://sqlserverhost.my.domain.com:1433;databaseName=sonar;selectMethod=cursor
sonar.jdbc.username=someuser
sonar.jdbc.password=somepassword
這導致SQLServer的一個「登錄失敗」消息「找不到登錄匹配提供的名稱。」
我想接下來的事情是與包含域用戶名進行連接,從而導致這些屬性:
sonar.jdbc.url=jdbc:sqlserver://sqlserverhost.my.domain.com:1433;databaseName=sonar;selectMethod=cursor
sonar.jdbc.username=DOMAIN\\someuser
sonar.jdbc.password=somepassword
然而,這也導致了「登錄失敗」,在SQLServer的,這裏的消息是「嘗試使用SQL Server身份驗證使用NT帳戶名稱「。
我錯過了什麼?
UPDATE:
的Sonarqube日誌可以在這裏找到:http://pastebin.com/AGB9bTQG
我能想到的一件事是從JTDS連接網址不同:包含 的JTDS連接的URL「域= my.domain.com」 ,Microsoft SQLServer驅動程序似乎不支持。因此我嘗試了SQLServer拒絕的DOMAIN \ someuser設置。
在以前版本的SQ(同時使用JTDS),是您使用作爲當前值相同的用戶名和密碼?換句話說,你只更新了「sonar.jdbc.url」屬性還是更改了其他內容? –
是的,我們一直在使用相同的憑證一段時間,不僅改變了sonar.jdbc.url和sonar.jdbc.driver ofcourse – nieuwtje
您不必指定「sonar.jdbc.driver」,什麼樣的價值也你定了嗎? –