2012-01-25 35 views
1

我試圖使用服務器名稱(local)爲我的本地sql服務器創建數據源。不過,我不斷收到以下錯誤試圖在ColdFusion中設置數據源

Connection verification failed for data source: sqlserver 
java.sql.SQLNonTransientConnectionException: [Macromedia][SQLServer JDBC Driver]Error establishing socket. Unknown host: (local) 
The root cause was that: java.sql.SQLNonTransientConnectionException: [Macromedia][SQLServer JDBC Driver]Error establishing socket. Unknown host: (local) 

在我使用(local)作爲服務器名稱的報告服務,它工作正常,

特德

回答

4

是否啓用外部TCP連接您的SQL服務器?

嘗試使用localhost而不是local。 (或將127.0.0.1 local添加到您的主機文件中)

+0

這顯示瞭如何啓用TCP連接,帶有屏幕截圖! http://www.mattgifford.co.uk/local-sql-server-2008-coldfusion-datasource –

+0

其實我認爲他使用的是包含括號的特殊關鍵字'(local)',它可能不適用於jdbc。但是你使用ip'127.0.0.1'或'localhost'的建議應該這樣做。 – Leigh

4

您不能使用(本地)這是Microsoft的唯一術語,任何外部都不會理解。

您需要指定servername作爲服務器的名稱。

如果SQL Server是在同一臺服務器的ColdFusion就可以使用本地主機

如果不使用DNS或服務器的本地IP名稱,即sql.local或192.168.1.22

如果服務器在您的外部您將需要配置TCP/IP並且端口1433也處於打開狀態。但默認情況下,應該設置,您可能只需打開防火牆以允許通過端口1433訪問。

在網絡環境中,通常使用本地IP訪問局域網以訪問數據庫,但如果數據庫爲真正的外部你需要一個真正的IP /域

+0

嗨,好吧,仍然沒有工作,但....我可以連接到MySQL確定 –