我試圖遠程連接到運行Windows Server 2008 R2的服務器上的SQL Server 2008 R2 Express。我收到以下錯誤:用於遠程連接到SQL Server 2008的連接字符串
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: TCP Provider, error: 0 - A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond.)
我認爲這個問題可能與我的連接字符串有關,因爲我不確定它應該是什麼。我理解的連接字符串應採取的形式:
Data Source=123.123.123.123\InstanceName;Initial Catalog=MyDBName;user id=MyUserName;password=MyPassword;
我的SQL Server安裝的實例名稱的形式爲ComputerName\SQLEXPRESS
。這是我在服務器上登錄Management Studio時看到的內容。所以連接字符串應該以
Data Source=123.123.123.123\ComputerName\SQLEXPRESS
這看起來不對,因爲所有的斜線。我試圖忽略這樣的計算機名稱:
Data Source=123.123.123.123\SQLEXPRESS
我也是在其他地方見過,你可以指定一個端口,所以我自己也嘗試
,因爲據我所知,1433所使用的TCP端口SQL Server和
Data Source=123.123.123.123,1434\SQLEXPRESS
,因爲據我所知,1434是SQL Server的瀏覽器使用的UDP端口。
我也試過這些的每一個組合,他們都給出了同樣的錯誤。
這些都是我已在服務器上啓用遠程瀏覽的步驟:
在Management Studio中,右鍵單擊該實例,選擇屬性,安全性和檢查SQL Server和Windows身份驗證模式。在連接選項卡上,我選中了「允許遠程連接到這臺計算機」。
在SQL Server配置管理器中,我已啓用所有四個連接選項(共享內存,命名管道,TCPIP和Via),它們發生在每個節點下。在SQL Express的協議下,我嘗試過指定端口1433,並在TCP動態端口設置爲0(我認爲是爲了啓用動態端口)時將其留空。
我爲TCP端口1433,UDP端口1434和程序例外
sqlservr.exe
和sqlbrowser.exe
創建了防火牆例外。
如果有人能告訴我這四個版本,我應該使用這將是一個很大的幫助,即使它並沒有解決問題的連接字符串的數據源部分組成。這意味着我隨後嘗試的所有事情,我只需要測試一次而不是四次。
在此先感謝您的幫助!
你應該使用這個:Data Source = 123.123.123.123 \ SQLEXPRESS。如果您在本地嘗試連接,連接是否正常工作? –
如果您發佈代碼,XML或數據樣本,**請**在文本編輯器中突出顯示這些行,然後單擊編輯器工具欄上的「代碼樣本」按鈕(「{}」)以精確地格式化和語法突出顯示它!如果您發佈錯誤消息,請**使用blockquotes('「')來正確格式化錯誤消息。 –