2010-12-22 271 views
2

這是一個難題。IIS 7無法連接到SQL Server 2008

我有一個運行IIS7和MS SQL Server 2008 R2的Windows Server 2008。 我打開了防火牆上的必要端口,並啓用了正確的SQL Server配置選項以允許遠程連接。

我已經證明這是可行的,可以在我的開發機器中連接SQL Server Management Studio Express和VS 2010。 但是,當我將我的站點上載到服務器時,它試圖連接到數據庫 - 使用與我的開發計算機上工作的連接字符串相同的連接字符串。

Data Source=MY.IP.ADD.DDRE.SS;Initial Catalog=relenster_v2_updated;Persist Security Info=True;User ID=<username>;Password=<mypassword> 

我撿的錯誤是:

provider: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server 

任何想法?

UPDATE: SQL Server和IIS在同一臺機器

我的開發機是完全獨立的

回答

1

這個同樣的問題相當長時間的討論可以在MSDN被發現。也許你會在那裏找到答案。

0

您可能遇到與運行IIS的服務器相關的問題。我假設SQL服務器實例在與「開發機器」不同的機器上運行。我還假設你的IIS服務器與SQL服務器或你的開發機器不一樣。在這種情況下,我會測試一下,看看你是否可以從你的IIS服務器連接到你的SQL服務器。有關不同服務器(nework環境)的更多信息將有所幫助。 Windows Server 2008可能會阻止出站連接。

1

解決

的問題是,該服務器在連接字符串中直接引用通過IP地址的服務器。但是,這個IP地址對於只知道其內部IP地址的服務器沒有任何意義。

簡而言之,將IP地址更改爲本地主機解決了問題

+0

+1 - 這對我也有竅門。 – 2012-01-27 15:16:34