Ich weiß, dass wir uns über solche Phrasen bewusst sein sollten, aber auf einmal haben alle meine Verbindungen zu localhost\sqlexpress
aufgehört zu arbeiten. Da .\sqlexpress
und (local)\sqlexpress
funktionieren, wäre das keine große Sache, wenn ich nicht gerade an einem Teamprojekt arbeite, bei dem alle Verbindungszeichenfolgen im vorherigen Format definiert sind. Und offensichtlich habe ich eine harte Zeit zu akzeptieren, dass es nicht mehr funktionieren sollte, also verbrachte ich mehrere Stunden damit, mehrere SQL Server-Versionen zu analysieren und neu zu installieren, ohne Erfolg. (Und auf dem Weg, die db-Projekte in VS2010 zu brechen, also musste ich auch neu installieren ...).
Aber hier sind die Details. Wie bereits erwähnt, konnte ich mich nicht mit localhost\sqlexpress
, sondern mit .\sqlexpress
verbinden. Die gleichen Symptome mit SQL Server-Manager und Verbindungszeichenfolgen für die Bereitstellung und den Ausführen von WCF-Diensten. Lustig genug, um die Standardinstanz als localhost
zu lösen.
Zuerst die ersten, ja, der SQL Server läuft und nur um sicher zu sein, dass ich TCP / IP aktiviert habe und den Port auf 1433 fest eingestellt habe, obwohl er auf meinem Kollegencomputer mit deaktivierter TCP / IP funktioniert. (Irgendwann habe ich gelesen, dass localhost
mit Shared Memory aufgelöst werden kann, wenn man den nativen SQL-Client benutzt, also denke ich, dass das auf seinem System passiert.)
Das Setup ist nur eine SQL Server Express 2008 R2-Instanz und VS2010 unter Windows 7 Professional.
Starten von Sql Express das Fehlerprotokoll sagt:
%Vor%Netstat sagt (Auszug):
%Vor%Ich notiere die Abwesenheit von 127.0.0.1:1433 und irgendein UDP auf Port 1433
Um das Problem zu diagnostizieren, benutze ich sqlcmd, um herauszufinden, welcher Transport verwendet wird:
1. localhost \ sqlexpress
%Vor%Verbindung zu localhost \ sqlexpress von SQL Server Management Studio kann nicht hergestellt werden, auch wenn ich den gemeinsamen Speicher als Protokoll festlege
2. localhost
%Vor%Kann eine Verbindung zu localhost von SQL Server Management Studio herstellen
3. (lokal) \ sqlexpress
%Vor%Kann sich mit (local) \ sqlexpress von SQL Server Management Studio
verbindenAlso ich bin hier verloren. Jede Hilfe wird sehr geschätzt.
in MS SQL, gehen Sie zu Konfigurationstools - & gt; SQL Server-Konfigurationsmanager Wählen Sie SQL Server-Netzwerkkonfiguration - & gt; Wählen Sie das Protokoll Im rechten Fenster aktivieren Sie tcp / ip und starten Sie die Dienste in services.msc neu Versuchen Sie dann, sich mit localhost \ sqlexpress
zu verbindenHaben Sie überprüft, dass der freigegebene Speicher im SQL Server-Konfigurations-Manager unter SQL Server-Netzwerkkonfiguration | aktiviert ist Protokolle?
Wenn ich das Protokoll "Shared Memory" deaktiviere, läuft "sqlcmd -S. \ sqlexpress" ab. Wenn Sie es aktivieren, funktioniert der Befehl einwandfrei.
Noch ein Gedanke ... Port 1434 wird für den SQL Server Discovery-Dienst verwendet, der es Programmen wie SQL Management Studio und dergleichen ermöglicht, festzustellen, dass SQL Server auf dem Computer ausgeführt wird. Nur noch eine Sache zu untersuchen.
Wir hatten dieses Problem. Aus irgendeinem Grund wurde auf diesem Rechner ein Alias erstellt, der den von uns verwendeten Servernamen (localhost \ SQL2008_R2) an einen Server leitete, der nicht mehr existierte.
Sobald wir den Alias gelöscht haben, hat alles funktioniert.
Die Aliase sind ein Baumknoten im SQL Server-Konfigurations-Manager.
Tags und Links sql sql-server sql-server-2008 connection-string localhost