2012-07-26 72 views
0

在我的機器有SQL服務器 SQLEXPRESS MSSQLSERVER問題連接到正確的服務器實例

我試圖連接到MSSQLSERVER的兩個實例,但我不斷收到

{「A網絡 - (SQL Server網絡接口,SQL網絡接口,SQL Server網絡接口,SQL Server網絡接口,SQL Server網絡接口,錯誤:25 - 連接字符串無效)「}

這裏的連接字符串:

connectionString="data source=.\MSSQLSERVER;Integrated Security=SSPI;initial catalog=OdeToFoodDB" 
     providerName="System.Data.SqlClient" 

我試圖讓服務器遠程連接可見,但它不工作。

做的sqlcmd -L打動了我:

服務器: (本地) MACHINE1 MACHINE1 \ SQLEXPRESS

因爲我禁用了SQLEXPRESS服務,並且只留下MSSQLSERVER運行的事實,這似乎有些奇怪。

enter image description here

在配置管理,網絡配置 - > MSSQLSERVER的協議我啓用了TCP/IP和命名管道,並在IP地址設置如下:

IP1 & IP2 IP3 & IP4

但服務器仍然不可用於遠程訪問(netstat -nb顯示沒有進程正在偵聽1433)。我的Windows防火牆已關閉。

任何想法?

+0

你似乎已經離開了您的連接字符串。 – Mithrandir 2012-07-26 18:19:22

+0

糟糕,在這裏它是: – Lukasz 2012-07-26 18:25:23

+0

節點 <添加名稱= 「OdeToFoodDB」 的connectionString = 「數據源= \ MSSQLSERVER;集成安全性= SSPI;初始目錄= OdeToFoodDB」 的providerName = 「System.Data.SqlClient的」 /> Lukasz 2012-07-26 18:25:34

回答

0

如果您的MSSQLSERVER是標準實例,它將採用機器的名稱。所以,你應該嘗試:

connectionString="data source=MACHINE1;Integrated Security=SSPI;initial catalog=OdeToFoodDB" 
     providerName="System.Data.SqlClient" 
+0

它確實有效。謝謝。我很想知道,爲什麼如果我明確指定MSSQLSERVER實例,它不會工作? – Lukasz 2012-07-26 19:35:57

+0

SQL Server可以作爲「標準實例」或「命名實例」安裝,前者採用機器的名稱,後者採用「machinename \ instance」的形式。這是一條規則。實例的服務名稱無論如何不重要。每臺機器可能只有一個標準實例,但有許多命名實例。 – Mithrandir 2012-07-26 19:40:15