Ich habe gerade SQL Server Express 2012 auf meinem Heimserver installiert. Ich versuche, von meinem Studio-PC aus eine Verbindung zu Visual Studio 2012 herzustellen, und erhalte wiederholt den bekannten Fehler:
Beim Herstellen einer Verbindung zu SQL Server ist ein netzwerkbezogener oder instanzspezifischer Fehler aufgetreten. Der Server wurde nicht gefunden oder war nicht zugänglich. Stellen Sie sicher, dass der Instanzname korrekt ist und dass SQL Server so konfiguriert ist, dass Remoteverbindungen zugelassen werden. (Anbieter: Named Pipes Provider, Fehler: 40 - Verbindung zu SQL Server konnte nicht hergestellt werden)
Was ich getan habe, um dies zu beheben:
- Führen Sie SQL Server Configuration Manager auf dem Server aus und aktivieren Sie den SQL Server-Browser
- Fügen Sie auf dem Server eine Windows-Firewall-Ausnahme für TCP, Ports 1433 und 1434 im lokalen Subnetz hinzu.
- Stellen Sie sicher, dass ich mich bei der SQL Server-Instanz für den Benutzer angemeldet habe, bei dem ich als Desktop angemeldet bin.
- Stellen Sie sicher, dass ich die Windows-Authentifizierung für die SQL Server-Instanz verwende.
- Starten Sie SQL Server und den gesamten Dang-Server wiederholt neu.
- Zieh mir alle Haare aus.
Wie kann ich SQL Server 2012 Express dazu bringen, Remoteverbindungen zuzulassen?
Antworten:
Nun, ich bin froh , dass ich gefragt habe . Die Lösung, die ich schließlich entdeckte, war hier:
Wie konfiguriere ich SQL Server Express so, dass Remote-TCP / IP-Verbindungen an Port 1433 zugelassen werden?
So weit, so gut und völlig erwartet. Aber dann:
(Wenn Sie diese Schritte ausführen, muss der SQL Server-Browser nicht aktiviert werden, und Sie müssen nur Port 1433 und nicht 1434 zulassen.)
Diese zusätzlichen fünf Schritte sind etwas, an das ich mich nicht erinnern kann, jemals in einer früheren Version von SQL Server, Express oder auf andere Weise ausgeführt worden zu sein. Sie scheinen notwendig gewesen zu sein, weil ich anstelle einer Standardinstanz eine benannte Instanz (myservername \ SQLEXPRESS) auf dem Server verwende. Siehe hier:
Konfigurieren Sie einen Server so, dass er einen bestimmten TCP-Port überwacht (SQL Server Configuration Manager).
quelle
IPAll
Einstellung war der SAVIOR-Rat! Meins war wie deins ...: Dmyserver\sqlexpress,[portnumber]
ohne die Klammern verwenden. Beachten Sie, dass es ist,
und nicht:
Der richtige Weg, um eine Verbindung zu Remote-SQL Server herzustellen (ohne den UDP-Port 1434 zu öffnen und den SQL Server-Browser zu aktivieren), besteht darin, IP und Port anstelle der benannten Instanz zu verwenden .
Die Verwendung von IP und Port anstelle einer benannten Instanz ist ebenfalls sicherer, da dadurch die Angriffsfläche verringert wird.
Vielleicht sprechen 2 Bilder 2000 Wörter ...
Diese Methode verwendet den angegebenen Port (das ist, was die meisten Leute wollen, glaube ich).
Für diese Methode müssen der UDP-Port 1434 geöffnet und der SQL Server-Browser ausgeführt werden.
quelle
Eine Sache noch...
Kyralessa bietet großartige Informationen, aber ich muss noch etwas hinzufügen, wo ich auch nach diesem Artikel ratlos war.
Klicken Sie unter SQL Server-Netzwerkkonfiguration> Protokolle für Server> TCP / IP aktiviert auf. Klicken Sie mit der rechten Maustaste auf TCP / IP und wählen Sie Eigenschaften. Unter den IP-Adressen müssen Sie für jeden von Ihnen verwendeten Verbindungstyp Aktiviert auf Ja setzen.
quelle
Sie können dies verwenden, um dieses Problem zu lösen:
Gehen Sie zu START> EXECUTE und führen Sie CLICONFG.EXE aus.
Das Named Pipes-Protokoll steht an erster Stelle in der Liste. Beenden Sie es und fördern Sie TCP / IP.
Testen Sie die Anwendung gründlich.
Ich hoffe diese Hilfe.
quelle
Sie können auch einstellen
im Protokolldialog dann in der IP-Adresse IP1 (sagen wir)
quelle
Dieser Artikel hat mir geholfen ...
So aktivieren Sie Remoteverbindungen in SQL Server
Alles in SQL Server wurde konfiguriert. Mein Problem war, dass die Firewall Port 1433 blockierte
quelle
Ich hatte dieses Problem vor kurzem. 2015 Aug.
Gelöst durch Öffnen von SQL Server Configuration Manager
Kann mit SQL Server Manager eine Verbindung zum Computer herstellen: [Hostadresse], 1433
Beispiel:
quelle
Bei meiner Installation von SQL Server 2012 Developer Edition, die mit Standardeinstellungen installiert wurde, musste ich nur den SQL Server-Konfigurationsmanager -> SQL Server-Netzwerkkonfiguration -> Protokolle für MSSQLSERVER laden und TCP / IP von Deaktiviert in Aktiviert ändern.
quelle
Ich musste eine Firewall-Eingangsportregel hinzufügen, um den UDP-Port 1434 zu öffnen. Dies ist diejenige, die der SQL Server-Browser abhört.
quelle
Ich bevorzuge die Art von "Rosdi Kasim", da dies keine Detailkonfiguration auf der IP erfordert.
Ich werde es auf jeden Fall wieder vergessen, wenn ich erneut versuche, einen anderen Server hochzufahren.
Halten Sie es einfach dumm (KISS), indem Sie einfach den SQL Server-Browserdienst aktivieren und dann die \ SQLEXPRESS hinter der IP hinzufügen, wenn Sie den Server verbinden.
Die direkte Verwendung von IP ohne "\ SQLEXPRESS" war mein Fehlerpunkt, da der Standardport nicht verwendet wird.
Vielen Dank.
quelle
Ich hatte das gleiche Problem mit der lokal installierten benannten Instanz von SQL Server 2014. Das Verbinden mit dem
FQDN\InstanceName
würde fehlschlagen, während das Verbinden nur mit meinemhostname\InstanceName
funktioniert. Zum Beispiel: Verbinden mitmycomputername\sql2014
funktioniert, aber mitmycomputername.mydomain.org\sql2014
nicht. DNS wurde korrekt aufgelöst, TCP / IP wurde in SQL Configuration Manager aktiviert, Windows-Firewall-Regeln hinzugefügt (und dann die Firewall zum Testen deaktiviert, um sicherzustellen, dass nichts blockiert wurde), aber keines davon hat das Problem behoben.Schließlich musste ich den Dienst " SQL Server Browser " auf dem SQL Server starten , wodurch das Konnektivitätsproblem behoben wurde.
Ich hatte nie bemerkt, dass der SQL Server-Browserdienst den SQL Server tatsächlich beim Herstellen von Verbindungen unterstützt. Ich hatte den Eindruck, dass es einfach geholfen hat, die Dropdowns zu füllen, wenn Sie auf "Nach weiteren Servern suchen" geklickt haben, um eine Verbindung herzustellen, aber es hilft tatsächlich, Client-Anforderungen an der richtigen zu verwendenden Portnummer auszurichten, wenn die Portnummer nicht explizit zugewiesen ist (ähnlich) Informationen darüber, wie Website-Bindungen dazu beitragen, dasselbe Problem auf einem IIS-Webserver zu beheben, auf dem mehrere Websites gehostet werden.
Dieses Verbindungselement gab mir den Hinweis auf den SQL Server-Browserdienst: https://connect.microsoft.com/SQLServer/feedback/details/589901/unable-to-connect-on-localhost-using-fqdn-machine- Name
Der Grund für den "SQL Server Browser" -Dienst von TechNet (Hervorhebung von mir hinzugefügt): https://technet.microsoft.com/en-us/library/ms181087(v=sql.120).aspx
Aus dem Abschnitt "Verwenden des SQL Server-Browsers":
Weitere Informationen aus demselben Artikel finden Sie im Abschnitt "Funktionsweise des SQL Server-Browsers":
quelle
Ich musste den Port über Configuration Manager hinzufügen und die Portnummer in meiner SQL-Verbindung [Host] \ [Name der Datenbankinstanz ] 1433 hinzufügen
Beachten Sie das Komma zwischen Instanzname und Port
quelle
Ich hatte ein anderes Problem als alle bisher erwähnten Antworten!
Ich sollte zunächst sagen, dass ich es in Visual Studio hatte und nicht in SQL Server Express, aber die Lösung sollte genau dieselbe sein.
Nun, Gott, es ist eigentlich ganz einfach und vielleicht ein bisschen dumm. Als ich versuchte, eine Datenbank zu erstellen, schlug Visual Studio den Namen des SQL Servers vor und gab mir meinen Windows-Benutzernamen. Da es sich tatsächlich um den Namen des Servers handelt, habe ich mich dafür entschieden.
In Wirklichkeit war es tatsächlich mein Windows-Benutzername +
\SQLEXPRESS
. Wenn Sie keine Einstellungen geändert haben, gehört dies wahrscheinlich auch Ihnen. Wenn es funktioniert, hören Sie auf zu lesen. Das ist meine Antwort. Wenn es nicht funktioniert, ist der Name vielleicht anders.Wenn Sie wie ich nur dieses Problem in Visual Studio hatten, um zu überprüfen, was Ihnen gehört, gehen Sie folgendermaßen vor:
Dies ist der Name des Servers und dies ist, was Sie versuchen sollten, eine Verbindung herzustellen! nicht das, was Visual Studio vorschlägt!
quelle
Eine weitere zu überprüfende Sache ist, dass Sie die benannte Instanz richtig geschrieben haben!
Dieser Artikel ist sehr hilfreich bei der Behebung von Verbindungsproblemen: Fehlerbehebung beim Herstellen einer Verbindung zum SQL Server-Datenbankmodul
quelle
In meinem Fall wurde die Datenbank auf einem nicht standardmäßigen Port ausgeführt. Überprüfen Sie, ob der Port, den Sie verbinden, mit dem Port übereinstimmt, auf dem die Datenbank ausgeführt wird. Wenn mehr Instanzen von SQL Server vorhanden sind, überprüfen Sie die richtige.
quelle
Sie müssen lediglich den entsprechenden Port in der Firewall des Servers öffnen.
quelle
Haben Sie Probleme beim Herstellen einer Verbindung zu SQL Server?
Versuchen Sie, die Firewall zu trennen.
Wenn Sie eine Verbindung mit getrennter Firewall herstellen können und möglicherweise einige Eingaberegeln wie "SQL Service Broker" übersehen, fügen Sie diese Eingaberegeln Ihrer Firewall hinzu:
"SQL ADMIN CONNECTION" TCP PORT 1434
UDP-PORT 1434 "SQL ADMIN CONNECTION"
"SQL ANALYSIS SERVICE" TCP PORT 2383
"SQL BROWSE ANALYSIS SERVICE" TCP PORT 2382
"SQL DEBUGGER / RPC" TCP PORT 135
"SQL SERVER" TCP PORT 1433 und andere, wenn Sie über Dinamic-Ports verfügen
"SQL SERVICE BROKER" TCP PORT 4022
quelle