Ich erhalte den obigen Fehler, wenn ich den Code ausführe -
%Vor%Ich habe versucht, Server auf localhost, Benutzer auf root, aber ich bekomme den folgenden Fehler -
%Vor%Ich kann über mysql workbench eine Verbindung zum mysql-Server herstellen und die Datenbank abfragen. Es ist nur der Code, der nicht funktioniert. Edit: Ich habe festgestellt, dass der Fehler auftritt, wenn ich SharpDevelop benutze und nicht wenn ich Visual Studio benutze.
Manchmal ist der Abstand und die Reihenfolge der Parameter in der Verbindungszeichenfolge wichtig (basierend auf persönlicher Erfahrung und einer langen Nacht: S)
Halten Sie sich also an das Standardformat hier
Server = meineServeradresse; Hafen = 1234; Datenbank = myDataBase; Uid = myUsername; Pwd = meinPasswort;
Da dies das Top-Ergebnis bei Google ist:
Wenn Ihre Verbindung anfänglich funktioniert, Sie jedoch nach vielen erfolgreichen Verbindungen diesen Fehler sehen, ist dieses Problem .
Zusammenfassend: Wenn Sie eine Verbindung öffnen und schließen, reserviert Windows den TCP-Port aus irgendeinem dummen Grund für zukünftige Verwendung. Nachdem dies viele Male ausgeführt wurde, sind die verfügbaren Ports erschöpft.
Der Artikel gibt einen Registry-Hack, um das Problem zu beheben ...
Hier sind meine Registrierungseinstellungen unter XP / 2003:
%Vor%Sie müssen sie erstellen. Standardmäßig sind sie nicht vorhanden.
Unter Vista / 2008 können Sie netsh verwenden, um etwas wie folgt zu ändern:
%Vor%
... aber die echte Lösung verwendet das Verbindungspooling, sodass das "Öffnen" einer Verbindung tatsächlich eine bestehende Verbindung wieder verwendet. Die meisten Frameworks machen dies automatisch, aber in meinem Fall hat die Anwendung aus irgendeinem Grund Verbindungen manuell verarbeitet.
Aktualisieren Sie Ihre Verbindungszeichenfolge wie unten gezeigt (auch ohne port
variable):
Hoffe, das hilft ...
Verwenden Sie SqlConnectionStringBuilder
, um die Verbindung zu vereinfachen
für Benutzer, die VS2013 ausführen
In Windows 10.
Überprüfen Sie, ob der Apache-Dienst ausgeführt wird. seit es durch World Wide Web Service ersetzt wird.
Führen Sie netstat -n aus, um dies zu überprüfen.
Stoppen Sie den Dienst. Apache starten. Starten Sie den Dienst neu.
Manchmal könnte das Problem auf Ihrer Windows-Firewall liegen, stellen Sie sicher, dass Ihr Server den Zugriff auf alle mit Ihrer MySQL-Datenbank verbundenen Ports erlaubt.
Ich hatte genau den gleichen Fehler.
Folgendes müssen Sie tun:
Wenn Sie MAMP verwenden, schließen Sie Ihren Server. Klicken Sie dann auf die Einstellungen-Schaltfläche, wenn Sie MAMP erneut öffnen (natürlich vor dem Neustart Ihres Servers).
Dann müssen Sie auf die Registerkarte Ports klicken und den Button "Web- und MySQL-Ports auf 80 & amp; 3306 setzen" anklicken.
Stellen Sie sicher, dass Ihr Datenbankserver läuft, wenn er nicht läuft, keine Verbindung herstellen kann und mysql standardmäßig auf 3306 läuft, so dass der Port nicht erwähnt werden muss, wenn die Portnummer unterschiedlich ist, dann müssen wir Port
Tags und Links c# visual-studio-2010 mysql sharpdevelop