2012-02-05 40 views
0

我正在嘗試探索由Windows Azure提供的Azure Connect服務。所以我有一個簡單的ASP.NET應用程序作爲Azure中的Web角色運行,它試圖連接到託管在本地系統上的SQL數據庫。我遵循了Windows Azure平臺培訓工具包中提供的所有步驟以及here的步驟。完成這一切後,我能夠從本地系統ping通Azure角色VM主機名。我能夠從虛擬機內部ping我的本地系統(通過使用mstsc登錄到VM來檢查這一點)。我可以使用telnet連接到端口1433(使用SQL通信打開)的本地系統。Azure Connect - 無法訪問本地託管的數據庫

但畢竟這當我嘗試訪問該數據庫託管在我的系統從Azure中託管的應用程序,我得到以下錯誤:

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

我的連接字符串看起來像下面的東西:

<add name="MyConnectionString" connectionString="Data Source=My-PC\SQLEXPRESS;Initial Catalog=Student;Persist Security Info=True;User ID=user;Password=pass" providerName="System.Data.SqlClient"/> 

我已經做了大部分的這些教程能夠像SQL Server上的遠程連接,使SQL服務器在Windows & SQL身份驗證,啓用網絡DTC訪問的遠程客戶端中提到的設置並打開端口143 3用於防火牆上的傳入TCP請求。

但我仍然得到相同的錯誤。任何人有任何線索?

回答

3

,因爲我與Azure的發揮它已經有一段連接 - 但我記得你需要在連接字符串中指定的端口號從Azure角色訪問內部部署的SQL Server實例時。

請嘗試修改您的連接字符串添加端口數據源:

Data Source=My-PC\SQLEXPRESS,1433

+0

是的,我發現了這一點得益於以下鏈接: http://stackoverflow.com/questions/1952904/connecting-to-remote-sql-server-2008-from-windows-azure 並感謝您的幫助太:-) – Vinod 2012-02-05 18:29:20

0

你爲什麼不嘗試替代語法連接字符串:

Server=[your_server_name];Database=[your database];User ID=user;Password=pass

而且還嘗試在你的Azure的實例RDP和嘗試TELNET您在端口1433上服務器應當編制。如果沒有,那麼一些防火牆設置不正確。

+0

就像我已經提到,我能夠從角色實例遠程登錄到我的系統。 – Vinod 2012-02-05 14:20:13

+0

您是否嘗試使用替代連接字符串。使用「服務器」而不是「數據源」作爲服務器? – astaykov 2012-02-05 16:20:19

相關問題