Wie kann ich Probleme mit einer Anwendung beheben, die eine Verbindung zu SQL Server herstellt?

Wie kann ich Probleme mit einer Anwendung beheben, die eine Verbindung zu SQL Server herstellt?

Ich versuche, ASP.net StoreFront mit SQL Server Express 2005 unter Windows Server 2008 zu verbinden. Ich folgteDieser Microsoft Support-Artikel ohne Erfolg. Unten ist der Fehler.

[SqlException (0x80131904): 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: Named Pipes Provider, error: 40 - Could not open a connection to SQL Server)]
AspDotNetStorefront.Global.Application_BeginRequest(Object sender, EventArgs e) +286
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +80
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +171

Wenn dieser Fehler auf einem Linux-System auftritt, würde ich den SQL-spezifischen Verbindungsclient verwenden, um die Verbindung zu testen (z. B. mysql). Verwenden Sie möglicherweise, telnetum den Port zu testen, und fragen Sie anschließend, iptablesob das das Problem war. Ich bin nicht sicher, wie ich unter Windows dasselbe tun kann. Ich habe mich mit SQL Server Management Studio Express mit denselben Anmeldeinformationen authentifiziert? Ich habe ein Fragezeichen gesetzt, weil ich mir bei einem Teil der Datenquelle nicht ganz sicher bin (das sollte die Host-/Serverkennung sein). Ich glaube nicht, dass Telnet den Port testen würde, da die Windows-Firewall auf L7 arbeitet (sie überprüft die Anwendung). Wie kann ich herausfinden, ob das Problem an meiner Fähigkeit liegt, eine Verbindung zum Server herzustellen? Oder an der Konfiguration, die definiert, wie die Verbindung zum Server hergestellt wird? (Hinweis: Sicherheit ist für mich irrelevant, diese VM dient nur Entwicklungszwecken und befindet sich hinter den Firewalls meines Laptops und hat kein NAT)

Antwort1

Das Problem lag an meiner Konfiguration. Ich habe es schließlich mithilfe von behoben, sqlcmd.exewodurch ich versuchen konnte, eine manuelle Verbindung mit den von mir angegebenen Parametern herzustellen, aber sie funktionierten nicht. Ein Blick aufseine Dokumentationund mir wurde klar, dass das localhostwahrscheinlich nicht ausreichte. Ich musste das einschließen instance, wie in der Dokumentation erwähnt -S [protocol:]server[\instance_name][,port]. Indem ich dies zum sqlcmdString und zur XML-Konfiguration hinzufügte, wurde mein Verbindungsproblem behoben.

verwandte Informationen