Sql Server Netzwerkbezogener Oder Instanzspezifischer Fehler
Warum wird die Meldung "Verbindung zum Server kann nicht hergestellt werden - Ein netzwerkbezogener oder instanzspezifischer Fehler" angezeigt.
Beim Versuch, eine Verbindung zu SQL Server herzustellen, wird folgende Fehlermeldung angezeigt:
Es kann keine Verbindung zu 108.163.224.173 hergestellt werden.
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 and then konfiguriert ist, dass Remoteverbindungen zugelassen werden.
(Anbieter: Named Pipes Provider, Fehler: 40 - Verbindung zu SQL Server konnte nicht hergestellt werden) (Microsoft SQL Server, Fehler: 1326)
Dieser Fehler wird ausgelöst, wenn ich versuche, meine Datenbank in Visual Studio 2010 für Gridview zu konfigurieren. Ich weiß nicht, wie ich diesen Fehler beheben soll.
Wie würden Sie diesen Fehler debuggen? Welche Schritte sollte ich unternehmen, um festzustellen, was hier wirklich vor sich geht, zusätzlich zu dem in der Fehlermeldung genannten?
Antworten:
Ich fand dice folgenden Techniken hilfreich:
-
Stellen Sie sicher, dass Ihr Datenbankmodul für die Annahme von Remoteverbindungen konfiguriert ist :
- Start> Alle Programme> SQL Server 2005> Konfigurationstools> SQL Server-Oberflächenkonfiguration
- Klicken Sie auf Oberflächenkonfiguration für Dienste und Verbindungen
- Wählen Sie die Instanz aus, bei der ein Problem auftritt> Datenbankmodul> Remoteverbindungen
- Aktivieren Sie lokale und Remote-Verbindungen
- Instanz neu starten
-
Möglicherweise müssen Sie in der Firewall eine Ausnahme für dice von Ihnen verwendete SQL Server-Instanz und den verwendeten SQL Server-Port erstellen :
- Start> Ausführen> Firewall.cpl
- Klicken Sie auf dice Registerkarte Ausnahmen
- Fügen Sie sqlservr.exe (normalerweise in
C:\Plan Files (x86)\Microsoft SQL Server\MSSQL.x\MSSQL\Bin
, überprüfen Sie Ihre Installationen auf den tatsächlichen Ordnerpfad ) und den Port hinzu (Standard ist1433
) - Überprüfen Sie auch Ihre Verbindungszeichenfolge
- Von Set up: FEHLER: Verbindung zu SQL Server konnte nicht hergestellt werden :
-
Überprüfen Sie, ob Ihre SQL Server-Dienste ordnungsgemäß ausgeführt werden:
- Gehen Sie zu Alle Programme> Microsoft SQL Server 2008> Konfigurationstools> SQL Server-Konfigurationsmanager> SQL Server-Dienste
- Stellen Sie sicher, dass der SQL Server-Dienststatus ausgeführt wird.
Stellen Sie außerdem sicher, dass sich Ihr Remote-Server im selben Netzwerk befindet . Führen Sie aus,
sqlcmd -L
um festzustellen, ob Ihr Server in Ihrer Netzwerkliste enthalten ist. -
Aktivieren Sie TCP / IP in der SQL Server-Konfiguration
Wenn zwei oder mehr SQL Server über das Netzwerk verbunden sind, erfolgt die gesamte Kommunikation über TCP / IP. Der Standardport der SQL Server-Installation ist 1433. Dieser Port kann über SQL Server Configuration Director geändert werden. TCP / IP sollte aktiviert sein, damit SQL Server verbunden werden kann.
- Gehen Sie zu Alle Programme >> Microsoft SQL Server 2008 >> Konfigurationstools >> SQL Server Configuration Managing director >> Wählen Sie TCP / IP aus
- Klicken Sie mit der rechten Maustaste auf TCP / IP >> Klicken Sie auf Aktivieren
Sie müssen SQL Server Services neu starten, damit alle Änderungen wirksam werden. Klicken Sie mit der rechten Maustaste und gehen Sie zu den Menüeigenschaften, um den Speicherort auszuwählen, an dem der Standardport von SQL Server geändert werden kann.
Ich habe eine Lösung für mich:
Öffnen Sie "SQL Server Configuration Manager".
Klicken Sie nun auf "SQL Server-Netzwerkkonfiguration" und dann auf "Protokolle für Namen ".
Klicken Sie mit der rechten Maustaste auf "TCP / IP" (stellen Sie sicher, dass es aktiviert ist). Klicken Sie auf Eigenschaften
Wählen Sie nun die Registerkarte "IP-Adressen" -und- Gehen Sie zum letzten Eintrag "IP All".
Geben Sie "TCP Port" 1433 ein.
Jetzt neu starten "SQL Server .Proper noun." mit "services.msc" (winKey + r)
Es wird klappen...
Hinzufügen meines stark positiv bewerteten Kommentars als Antwort mit Screenshots.
Ich habe viel Zeit damit verbracht, schließlich hat es für mich funktioniert:
1) Öffnen Sie SQL Server Configuration Manager -> SQL Server-Netzwerkkonfiguration -> Protokolle für <(INSTANZ)> -> TCP / IP ( doppelklicken Sie darauf).
2) Wählen Sie -> IP-Adressen (Registerkarte) .
iii) Gehen Sie zum letzten Eintrag IP All und erwähnen Sie TCP Port 1433 .
4) Drücken Sie Win+Rund geben Sie services.msc ein .
v) Starten Sie nun SQL Server <(INSTANCE)> neu .
Danach wurde das Problem behoben!
Ich löse dieses Problem, indem ich Dienste öffne und dann den SQL Server (Sqlexpress) -Dienst starte .
Dieser Fehler trat hauptsächlich auf, wenn der SQL-Dienst gestoppt wurde. Sie müssen den Dienst neu starten. Um zu diesem Fenster zu gelangen, müssen Sie dice Dienste wie folgt durchsuchen:
Suchen Sie dann nach SQLSERVER (MSSQLSERVER) und starten Sie den Dienst neu.
Hoffe das wird funktionieren.
Drücken Sie window + R (Run window Open)
und in Fenster ausführen ausführen "services.msc"
und neue Dienste öffnen. Suchen Sie SQL Server mit dem Instanznamen in meinem Fall. SQL SERVER(SQLEXPRESS)
Starten Sie dann diesen Dienst und versuchen Sie es erneut. Es funktioniert für mich. Hoffe, es funktioniert auch für Sie.
Falls Sie möglicherweise die Express Edition verwenden :
Fügen Sie "\SQLEXPRESS"
nach Ihrem Servernamen hinzu
z.B "MY-SERVER\SQLEXPRESS"
Ich hatte den gleichen Fehler, als ich mein WinForms-Projekt (das die Arbeit mit einer SQL Server-Datenbank umfasst und auf meinem PC einwandfrei funktioniert) auf einem anderen PC ausführen wollte. Das Problem lag in der Windows-Firewall auf meinem PC. Ich habe dies gelöst, indem ich zwei Regeln hinzugefügt habe. Dies ist das gesamte Verfahren zum Zulassen von SQL Server über die Windows-Firewall:
- Öffnen Sie "Ausführen" und geben Sie ein
services.msc
- Suchen Sie den Dienst für SQL Server (Instanzname) und SQL Server-Browser. Klicken Sie nacheinander mit der rechten Maustaste, wählen Sie "Eigenschaften" und kopieren Sie den Pfad zur exe-Datei
- Öffnen Sie dann
firewall.cpl
, klicken Sie auf Zulassen einer Anwendung oder fügen Sie eine Regel hinzu, fügen Sie den zuvor kopierten Pfad hinzu (es gibt ein Verfahren, das Sie befolgen müssen), aktivieren Sie Domain und Individual, und deaktivieren Sie Public.
Dies ist der YouTube-Link, über den Sie das folgende Verfahren sehen können: SQL Server über die Windows-Firewall zulassen
Wenn keine der oben genannten Lösungen funktioniert (bei mir hat nichts funktioniert), starten Sie einfach Ihren Reckoner neu und Sie können eine Verbindung zu Ihrem SQL Server (localhost) herstellen.
Ich verwende SQL Server 2016 und Windows x.
Als erstes müssen Sie eine Remoteverbindung zu SQL Server zulassen. Ich habe im Startmenü sqlservermanager13.msc eingegeben , um den SQL Server Configuration Manager zu öffnen. Stellen Sie sicher, dass der TCP / IP-Status aktiviert ist.
Überprüfen Sie Ihre TCP-Portnummer, indem Sie auf den Namen des TCP / IP-Protokolls doppelklicken. Normalerweise ist es standardmäßig 1433.
Mit den folgenden Verfahren wird dice Windows-Firewall mithilfe der Windows-Firewall mit MMC-Snap-In (Advanced Security Microsoft Direction Panel) konfiguriert. Die Windows-Firewall mit erweiterter Sicherheit konfiguriert nur das aktuelle Profil.
So öffnen Sie einen Port in der Windows-Firewall für den TCP-Zugriff
- Klicken Sie im Startmenü auf Ausführen, geben Sie WF.msc ein, und klicken Sie dann auf OK.
- Klicken Sie in der Windows-Firewall mit erweiterter Sicherheit im linken Bereich mit der rechten Maustaste auf Eingehende Regeln, und klicken Sie dann im Aktionsbereich auf Neue Regel.
- Wählen Sie im Dialogfeld Regeltyp die Option Port aus, und klicken Sie dann auf Weiter.
- Wählen Sie im Dialogfeld Protokoll und Ports dice Option TCP aus. Wählen Sie Bestimmte lokale Ports aus, und geben Sie die Portnummer der Instanz des Datenbankmoduls ein, z. B. 1433 für die Standardinstanz. Weiter klicken.
- Wählen Sie im Dialogfeld Aktion dice Selection Verbindung zulassen aus, und klicken Sie dann auf Weiter.
- Wählen Sie im Dialogfeld Profil alle Profile aus, die die Computerverbindungsumgebung beschreiben, wenn Sie eine Verbindung zum Datenbankmodul herstellen möchten, und klicken Sie dann auf Weiter.
- Geben Sie im Dialogfeld Name einen Namen und eine Beschreibung für diese Regel ein, und klicken Sie dann auf Fertig stellen.
Eine andere Sache zu konfigurieren.
So öffnen Sie den Zugriff auf SQL Server bei Verwendung dynamischer Ports
- Klicken Sie im Startmenü auf Ausführen, geben Sie WF.msc ein, und klicken Sie dann auf OK.
- Klicken Sie in der Windows-Firewall mit erweiterter Sicherheit im linken Bereich mit der rechten Maustaste auf Eingehende Regeln, und klicken Sie dann im Aktionsbereich auf Neue Regel.
- Wählen Sie im Dialogfeld Regeltyp dice Option Programm aus, und klicken Sie dann auf Weiter.
- Wählen Sie im Dialogfeld Programm die Selection Dieser Programmpfad. Klicken Sie auf Durchsuchen, navigieren Sie zu der Instanz von SQL Server, auf die Sie über dice Firewall zugreifen möchten, und klicken Sie dann auf Öffnen. Standardmäßig befindet sich SQL Server unter C: \ Plan \ Microsoft SQL Server \ MSSQL13.MSSQLSERVER \ MSSQL \ Binn \ Sqlservr.exe. Weiter klicken.
- Wählen Sie im Dialogfeld Aktion die Option Verbindung zulassen aus, und klicken Sie dann auf Weiter.
- Wählen Sie im Dialogfeld Profil alle Profile aus, die die Computerverbindungsumgebung beschreiben, wenn Sie eine Verbindung zum Datenbankmodul herstellen möchten, und klicken Sie dann auf Weiter.
- Geben Sie im Dialogfeld Name einen Namen und eine Beschreibung für diese Regel ein, und klicken Sie dann auf Fertig stellen.
Schauen Sie sich die Microsoft-Doucmentation an. Konfigurieren Sie eine Windows-Firewall für den Zugriff auf das Datenbankmodul
Sie können die folgenden Methoden testen.
ein
- Überprüfen Sie die Verbindungszeichenfolge des Projekts.
b
- Gehen Sie zu Dienste und starten Sie dice SQLServer-Instanz neu.
c
- Öffnen Sie 'SQLServer Configuration Managing director'.
- Wählen Sie im linken Bereich "SQLServer-Netzwerkkonfiguration" aus und erweitern Sie es
- Wählen Sie 'Protokolle für MSSQLServer'
- Klicken Sie im rechten Bereich auf "TCP / IP".
- Setzen Sie auf der Registerkarte "Protokoll" die Option "Aktiviert" auf "Ja".
- Scrollen Sie auf der Registerkarte "IP-Adressen" nach unten
- Stellen Sie im 'IPAll' 'TCP Port' auf 1433 ein
- d
- Öffnen Sie "Firewall mit erweiterter Sicherheit".
- Wählen Sie auf der rechten Registerkarte "Eingehende Regeln".
Suchen Sie auf der mittleren Registerkarte den Datensatz "lokaler Port" (1433). Wenn Sie ihn nicht finden können, versuchen Sie, ihn mit den folgenden Ebenen zu erstellen
- Klicken Sie im Startmenü auf Ausführen, geben Sie 'WF.msc' ein und klicken Sie dann auf OK
- Klicken Sie im linken Bereich auf "Windows-Firewall mit erweiterter Sicherheit".
- Klicken Sie im rechten Bereich mit der rechten Maustaste auf "Eingehende Regeln" und dann auf "Neue Regel".
- Wählen Sie im Dialogfeld Regeltyp die Option 'Port' aus und klicken Sie dann auf Weiter
- Wählen Sie im Dialogfeld Protokoll und Ports dice Option 'TCP' und dann 'Spezifische lokale Ports' aus. Geben Sie dann die Portnummer 1433 ein. Klicken Sie auf Weiter
- Wählen Sie im Dialogfeld Aktion die Option Verbindung zulassen aus, und klicken Sie dann auf Weiter
- Aktivieren Sie im Dialogfeld "Profil" die Option "Privat" und "Öffentlich". Klicken Sie anschließend auf "Weiter"
- Geben Sie im Dialogfeld 'Name' 'SQL 1433 Port' ein und schreiben Sie für eine Beschreibung eine eigene Beschreibung. Klicken Sie dann auf Fertig stellen
- Doppelklicken Sie dann auf der mittleren Registerkarte auf das gefundene Element (Instanz) oder das von Ihnen erstellte Chemical element mit dem Namen 'SQL 1433 Port'.
- Wählen Sie im geöffneten Dialogfeld die Registerkarte "Bereich" (SQL Server-Eigenschaften).
- Auf dem lokalen PC Gehen Sie in Ihrem Browser zu google.com und suchen Sie nach "Meine IP".
- dann Kopie Ihrer 'IP'
- Gehen Sie zum Remote-Server und wählen Sie im Dialogfeld "SQL Server-Eigenschaften" der Registerkarte "Bereich" unter "Remote-IP-Adresse" die Option "Diese IP-Adressen" aus und klicken Sie auf die Schaltfläche "Hinzufügen"
- Wählen Sie im geöffneten Dialogfeld (IP-Adresse) die Option 'Diese IP-Adresse oder dieses Subnetz' und fügen Sie Ihre 'IP' ein. Klicken Sie auf OK.
Diese Lösung löst sowohl Probleme network mistake
als auch den service
dahinter stehenden SQL Server
Ich habe hier eine ähnliche Frage beantwortet. Sie müssen die andere open Run type-> services.msc
unter "Dienste" angeben.> sort by stopped
Sie sehen eine Reihe von gestoppten SQL-DienstenRight click and showtime
Zu Beginn gibt es 4 Probleme, die die häufigsten Verbindungsfehler mit LocalDb SqlExpress Sql Server verursachen SQL Network Interfaces, error: 50 - Local Database Runtime error occurred
können. Bevor Sie beginnen, müssen Sie v11 oder v12 in (localdb) \ mssqllocaldb umbenennen
Troubleshooting Steps
- Auf den ausgeführten Diensten wird dieses Cmd nicht ausgeführt ,
net start MSSQLSERVER
odernet start MSSQL$ instancename
- Sie haben die Firewall-Ports hier nicht konfiguriert
- Ihre Installation hat und Problem / beschädigt (die folgenden Schritte helfen Ihnen einen schönen sauberen Start)
- Sie haben V11 oder 12 nicht in mssqllocaldb / SqlServer umbenannt
Ich fand, dass es am einfachsten ist, das Folgende zu tun - ich habe die Bilder und Schritte zur Hilfe angehängt.
Resolution Steps :
Überprüfen Sie zunächst, welche Instanz Sie installiert haben. Überprüfen Sie dazu dice Registrierung und führen Sie cmd aus
-
cmd> Sqllocaldb.exe i
-
cmd> Sqllocaldb.exe south "whicheverVersionYouWantFromListBefore"
Wenn dieser Schritt fehlschlägt, können Sie mit der Pickd
cmd> Sqllocaldb.exe d "someDb" löschen. -
cmd> Sqllocaldb.exe c "createSomeNewDbIfyouWantDb"
-
cmd> Sqllocaldb.exe showtime "createSomeNewDbIfyouWantDb"
Ich hatte das gleiche Trouble und das Problem war, dass ich mehrere Projekte in der Lösung ( Web
und Droid
) hatte und obwohl Default project
in der ausgewählt Package Manager Console
, wurde die Verbindungszeichenfolge aus dem Droid
Projekt verwendet:
PM > update-database - Verbose Using StartUp project 'Droid' . < -- DROID Using NuGet projection 'Web' . < -- Spider web Specify the '-Verbose' flag to view the SQL statements existence applied to the target database . <! -- BAD TARGET DATABASE --> Target database is : 'DefaultConnection' ( DataSource : .\ SQLEXPRESS , Provider : Organisation . Information . SqlClient , Origin : Convention ). Organization . Data . SqlClient . SqlException ( 0x80131904 ): A network-related or example-specific error occurred while establishing a connexion to SQL Server . The server was not found or was not accessible . Verify that the instance name is right and that SQL Server is configured to let remote connections . ( provider : SQL Network Interfaces , mistake : 26 - Fault Locating Server / Instance Specified ) [ REMOVED TEXT ] ClientConnectionId : 00000000-0000-0000-0000-000000000000 Error Number : -1 , State : 0 , Form : twenty A network-related or instance-specific fault occurred while establishing a connection to SQL Server . The server was non found or was not accessible . Verify that the instance name is correct and that SQL Server is configured to allow remote connections . ( provider : SQL Network Interfaces , error : 26 - Error Locating Server / Instance Specified )
Nach dem Einstellen der Startup Project
auf Web
und die Default Projection
in Parcel Manger Console
habe ich es an der Arbeit.
Ich muss den SQL Server-Browserdienst in SQL Server Configuration Manager ausführen . Die Installation kann einen neu erstellten Dienst ohne diesen nicht erkennen.
Die oben genannten Lösungen sollten zwar in xc% der Fälle funktionieren, aber wenn Sie diese Antwort noch lesen !!! Sie versuchen wahrscheinlich, eine Verbindung zu einem anderen Server als beabsichtigt herzustellen. Dies kann daran liegen, dass eine Konfigurationsdatei auf einen anderen SQL Server verweist als der tatsächliche Server, zu dem Sie eine Verbindung herstellen möchten.
Ist mir zumindest passiert.
Ich bin von einem Arbeitslaptop unter Windows vii zu einem Arbeitslaptop unter Windows 10 gewechselt. Ich habe SSMS2016 unter Windows seven erfolgreich verwendet.
Das gleiche Trouble trat bei Verwendung von SSMS2012 oder SSMS2016 auf. Mein Zugriff auf die 10 SQL-Server mithilfe der Windows-Authentifizierung war immer noch der gleiche. Ich könnte dies von einem anderen Server testen. Allerdings 2 der 10 Server nicht von meinem Laptop verbinden . Beide waren MS SQL Server 9, aber ich konnte eine Verbindung zu anderen SQL Server 9-Datenbanken herstellen.
Die Lösung bestand darin , eine Firewall-Regel hinzuzufügen (unter Verwendung der Windows-Firewall mit erweiterter Sicherheit).
Erstellen Sie eine Eingangsregel für jedes SSMS, z. B. C: \ Programme (x86) \ Microsoft SQL Server \ 130 \ Tools \ Binn \ ManagementStudio \ Ssms.exe
Ich bin kein Netzwerkexperte, daher habe ich die Details nicht angegeben, aber hoffentlich weist es Sie in die richtige Richtung.
Fehlermeldung (Vor-Firewall-Regel) "Beim Herstellen einer Verbindung zu SQL Server ist ein netzwerkbezogener oder instanzspezifischer Fehler aufgetreten. Der Server wurde nicht gefunden oder state of war nicht verfügbar. Stellen Sie sicher, dass der Instanzname korrekt und SQL Server für konfiguriert ist Remoteverbindungen zulassen (Anbieter: SQL-Netzwerkschnittstellen, Fehler: 26 - Fehler beim Auffinden des angegebenen Servers / der angegebenen Instanz) (.Cyberspace SqlClient Data Provider) "
Warum dieser Fehler and so langweilig und laut ist, nur weil er in verschiedenen Situationen auftreten kann.
Ich habe hier oben alle Ansätze gemacht und werde immer noch gelutscht. Stellen Sie also sicher, dass Sie dasselbe getan haben wie ich, bevor Sie nach unten blättern.
Vielleicht bin ich nicht in der Lage, deine State of affairs sofort zu beheben, aber ich kann dir eine Richtung oder ein Denken aufzeigen (Derjenige, der endlich hier runterrutscht). Ich habe begonnen, über den Fehler meines laufenden Programms nachzudenken, nachdem ich sichergestellt habe, dass der Instanzname eindeutig richtig ist, und meine Datenbank and then eingestellt, dass die Fernsteuerung nach den oben beschriebenen Methoden möglich ist. Danach vermutete ich, dass in meinem Codefragment der SQL-Verbindung etwas nicht stimmte.
Lösung meines Problems:
- Überprüfen Sie meine SQL-Verbindungsfunktion
- Klicken Sie hier, um dice Konfiguration anzuzeigen
- Neue Verbindung
- Wählen Sie Ihren Servernamen
Es funktioniert für mich, wenn ich darüber nachdenke, was genau im Verbindungsprozess passiert. Ich hoffe, mein Denken wird dazu führen, dass du deinen Fehler tötest.
Ich habe alle anderen Antworten auf diese Frage ausprobiert und einige, wenn nicht alle, haben wahrscheinlich dazu beigetragen, dass dies für mich funktioniert, aber ich konnte immer noch keine Remote-Verbindung zur DB herstellen. Ich habe einen SQL Server auf einer Azure-VM verwendet.
Ich erinnerte mich schließlich daran, dass die VM über Endpunkte verfügt, die vom Azure-Konto-Proxy gesteuert werden. Daher ging ich zum Azure-Portal und fügte 1433 als verfügbaren Endpunkt hinzu, um eine Verbindung zu meiner SQL-Instanz herzustellen.
Hoffe das hilft jemandem, der alle anderen Antworten ausprobiert hat und noch kein Glück hat!
Zusammenfassung
Verwenden Sie SQL Server Configuration Managing director, um ein Trouble zu beheben, das beim Ausführen der lokalen App im Vergleich zur Remotedatenbank auftritt, und fügen Sie einen Allonym für die Remotedatenbank hinzu.
Einzelheiten
Ich war kürzlich auf dieses Problem gestoßen, als ich von einem Windows seven auf einen Windows x-Laptop umgestiegen bin. Ich habe eine lokale Entwicklungs- und Laufzeitumgebung ausgeführt, dice auf einem Remote-Server auf unsere Dev-Datenbank zugreift. Wir greifen auf die Dev-Datenbank über einen Server-Alias zu, der über das SQL Server-Client-Netzwerkdienstprogramm (cliconfg.exe) eingerichtet wurde. Nachdem ich bestätigt hatte, dass der Allonym sowohl in der 64-Chip- als auch in der 32-Fleck-Version des Dienstprogramms korrekt eingerichtet state of war und dass der Datenbankserver vom neuen Laptop über SSMS zugänglich state of war, wurde vom OP immer noch der Fehler angezeigt (nicht dice IP-Adresse des OP von Kurs).
Es war erforderlich, SQL Server Configuration Manager zu verwenden, um einen Alias für den Remote-Dev-Datenbankserver hinzuzufügen. Die Dinge wurden behoben.
Sie können den Dienststatus von MS SQL Server 2014 überprüfen. In Windows 7 können Sie dies folgendermaßen tun:
- Gehen Sie zur Suche und geben Sie "SQL Server 2014 Configuration Director" ein
- Klicken Sie dann im linken Menü auf "SQL Server Service"
- Überprüfen Sie die Instanz des SQL Server-Dienststatus, wenn er gestoppt ist oder ausgeführt wird
- Wenn es gestoppt wurde, ändern Sie den Status in "Ausführen" und melden Sie sich bei SQL Server Management Studio 2014 an
Mein Problem begann, als ich versuchte, den Server von IIS Express auf Local IIS zu ändern (während ich LocalDB verwendete ).
Ich habe LocalDB (für Entwicklungszwecke) verwendet, und als ich von Local IIS zu IIS Express zurückkehrte, hatte Visual Studio meine Datenquelle von Data Source = (LocalDb) \ MSSQLLocalDB auf Data Source =. \ SQLEXPRESS umgestellt
Falsche Verbindungszeichenfolge
<add name="DefaultConnection" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\SurveyTestsDB.mdf;Initial Catalog=SurveyTestsDB;Integrated Security=Truthful;User Case=True" providerName="System.Data.SqlClient" />
Richtige Verbindungszeichenfolge
<add name="DefaultConnection" connectionString="Data Source=(LocalDb)\MSSQLLocalDB;AttachDbFilename=|DataDirectory|\SurveyTestsDB.mdf;Initial Catalog=SurveyTestsDB;Integrated Security=True" providerName="System.Data.SqlClient" />
Hoffe das hilft jemandem da draußen.
Stellen Sie neben dem Versuch von Teo Chuen Wei Bryan sicher, dass Sie sich auch auf den richtigen Server- / Instanznamen in der Verbindungszeichenfolge beziehen.
Wenn Sie die Kurzform Hostname / Instanz auf dem Datenbankserver oder in der Datei web.config verwenden, stellen Sie sicher, dass Sie den vollqualifizierten Domänennamen (FQDN) / die Instanz verwenden
Um die Konnektivität von einem Server zu testen, auf dem der SQL Server-Client NICHT vorhanden ist,
-> Erstellen Sie eine Textdatei und ändern Sie deren Dateierweiterung in .udl
-> Klicken Sie mit der rechten Maustaste auf die Datei und Sie sehen die Registerkarte Verbindung.
-> Geben Sie den Servernamen und die Anmeldeinformationen ein, um dice Verbindung zum Datenbankserver zu testen.
Hoffe das hilft.
Wenn dieser Fehler beispielsweise in einer Produktionsumgebung plötzlich auftritt und sich nichts geändert hat, versuchen Sie die folgenden iv Elemente in der folgenden Reihenfolge, um festzustellen, ob er behoben wird.
- Starten Sie den SQL Server-Dienst neu.
- Starten Sie den Dienst (z. B. IIS) neu, der den SQL Server aufruft. (Das Problem liegt wahrscheinlich hier vor, wenn die Zeit zwischen dem Start des Dienstaufrufs an SQL Server und dem Zeitpunkt, an dem der Antwortfehler angezeigt wird, sehr kurz ist (etwa eine oder zwei Sekunden).
- Neustart des Servers SQL Server ist eingeschaltet.
- Starten Sie den Server neu, auf dem sich der aufrufende Dienst befindet.
Als dieser Fehler in Visual Studio auftrat,
„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. (Provider: Named Pipes Provider, Fehler: 40 - Verbindung zu SQL Server konnte nicht hergestellt werden) "
... war es während der Ausführung des folgenden C # -Codes, der versuchte, meine SQL Server-Daten abzurufen, um sie in einem Raster anzuzeigen. Die Unterbrechung trat genau in der Zeile auf, in der connect.Open () angegeben ist:
using ( var connect = Connections . mySqlConnection ) { const cord query = "SELECT Proper name, Birthdate, Narrative FROM Friends" ; using ( var command = new SqlCommand ( query , connect )) { connect . Open (); using ( var dr = control . ExecuteReader ()) { while ( dr . Read ()) { // apathetic } } } }
Es state of war unerklärlich, weil die SQL-Abfrage sehr einfach state of war, ich dice richtige Verbindungszeichenfolge hatte und der Datenbankserver verfügbar war. Ich habe mich entschlossen, die eigentliche SQL-Abfrage manuell in SQL Management Studio auszuführen. Sie lief einwandfrei und lieferte mehrere Datensätze. In den Abfrageergebnissen fiel jedoch eines auf: In einem Feld vom Typ varchar (max) in der Tabelle "Friends" befand sich ein nicht ordnungsgemäß codierter HTML-Text (insbesondere einige codierte Kommentarsymbole der Art, <!--
dice in den Daten der Spalte "Narrative" enthalten sind). Die verdächtige Datenzeile sah folgendermaßen aus:
Name Birthdate Narrative ==== ========= ============== Fred 21 - Oct-79 & lt ;! --HTML Annotate -->Once upon a fourth dimension...
Beachten Sie das codierte HTML-Symbol " <
", das für ein "<" - Zeichen steht. Irgendwie gelangte das in dice Datenbank und mein C # -Code konnte es nicht aufnehmen! Es ist jedes Mal direkt in der Zeile connect.Open () fehlgeschlagen! Nachdem ich diese eine Datenzeile in der Datenbanktabelle Friends manuell bearbeitet und stattdessen das dekodierte Zeichen "<" eingegeben hatte, funktionierte alles! And then hätte diese Reihe aussehen sollen:
Proper name Birthdate Narrative ==== ========= ============== Fred 21 - October-79 <! --HTML Comment -->One time upon a time...
Ich habe dice eine fehlerhafte Zeile, die ich hatte, mit dieser einfachen UPDATE-Anweisung unten bearbeitet. Wenn Sie jedoch mehrere fehlerhafte Zeilen mit codiertem HTML hatten, benötigen Sie möglicherweise eine ausführlichere UPDATE-Anweisung, dice die Replace-Funktion verwendet:
UPDATE Friends Prepare Narrative = '<!--HTML Comment -->Once upon a time...' WHERE Narrative LIKE '<%'
Die Moral der Geschichte lautet also (zumindest in meinem Autumn), Ihren HTML-Inhalt zu bereinigen, bevor Sie ihn in der Datenbank speichern, und Sie werden diesen kryptischen SQL Server-Fehler überhaupt nicht erhalten! (Äh, die ordnungsgemäße Bereinigung / Dekodierung Ihres HTML-Inhalts ist Gegenstand einer weiteren Diskussion, die einer separaten StackOverflow-Suche würdig ist, wenn Sie weitere Informationen benötigen!)
Fügen Sie am Ende Ihrer Verbindungszeichenfolge eine ,
und eine Portnummer (wie in ,1433
) hinzu.
Die Anordnung der XML-Tags in Web.config ist wichtig
Zuerst
< configSections > <! -- For more data on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --> < department proper noun = "entityFramework" type = "System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Civilisation=neutral, PublicKeyToken=b77a5c561934e089" requirePermission = "false" /> </ configSections >
Nach
< connectionStrings > < add name = "SqlConnectionString" connectionString = "Information Source=.; Initial Catalog=TestDB; Trusted_Connection=True;" providerName = "Organisation.Data.SqlClient" /> </ connectionStrings >
In meiner State of affairs hatte der MSSQLSERVER-Dienst ein Problem, daher habe ich den Dienst neu gestartet und das Problem behoben.
Daher empfehle ich, zur Dienst-App zu gehen, indem Sie: Windows-Schlüssel, "Dienste" suchen und dann Ihre SQL-Instanz normalerweise "SQL Server (MSSQLSERVER)" unter für Microsoft SQL Server suchen. Klicken Sie mit der rechten Maustaste auf Dienst und klicken Sie auf Start. Wenn deaktiviert, klicken Sie auf Neu starten.
Dieser Fehler tritt auf, wenn Ihre SQL Server-Instanz ist stopped
.
Gehen Sie zu allen Programmen> SQL Server> Konfigurationstools> SQL Server-Konfigurationsmanager
Klicken Sie dann auf SQL SERVER SERVICES. Die Liste der Instanzen wird angezeigt. Wählen Sie dice betreffende Instanz aus und klicken Sie auf das Wiedergabesymbol in der oberen Symbolleiste. Ich hoffe, dies hilft.
Diese Antwort ist sehr spät (aber besser spät als nie;)
Ich habe dieses Problem behoben, indem ich das Projekt festgelegt habe, das Entity Framework als Startprojekt verwendet, und dann den Befehl "update-database" ausgeführt habe.
Sql Server Netzwerkbezogener Oder Instanzspezifischer Fehler,
Source: https://levitrares.com/host-https-qastack.com.de/programming/18060667/why-am-i-getting-cannot-connect-to-server-a-network-related-or-instance-speci
Posted by: martineaumearronsid.blogspot.com
0 Response to "Sql Server Netzwerkbezogener Oder Instanzspezifischer Fehler"
Post a Comment