wake-up-neo.com

Verbindung zum Datenbankserver kann nicht hergestellt werden (mysql workbench)

Könnten Sie mir helfen, dieses Problem zu lösen?

Wenn ich versuche, unter Datenbank-Menü in MySQL Workbench auf "Datenbank abfragen" es gibt mir einen fehler:

Cannot Connect to Database Server

Your connection attempt failed for user 'root' from your Host to server at 
127.0.0.1:3306:Can't connect to mysql server on '127.0.0.1'(10061)

Please:

 1. Check that mysql is running on server 127.0.0.1
 2. Check that mysql is running on port 3306 (note: 3306 is the default, but this can 
    be changed)
 3. Check the root has rights to connect to 127.0.0.1 from your address (mysql rights 
    define what clients can connect to the server and from which machines) 
 4. Make sure you are both providing a password if needed and using the correct 
    password for 127.0.0.1 connecting from the Host address you're connecting from
48
user948950

Versuchen Sie, services.msc über das Startmenü-Suchfeld zu öffnen, und starten Sie den MySQL-Dienst manuell.

41
Colin

Das Problem ist wahrscheinlich darauf zurückzuführen, dass die Socket-Authentifizierung für den Root-Benutzer standardmäßig aktiviert ist, wenn während des Upgrades auf Ubuntu 16.04 kein Kennwort festgelegt wurde.

Die Lösung besteht darin, zur nativen Kennwortauthentifizierung zurückzukehren. Sie können dies tun, indem Sie sich mit der Socket-Authentifizierung bei MySQL anmelden, indem Sie Folgendes tun:

Sudo mysql -u root

Einmal eingeloggt:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

dadurch wird die native (alte Standard) Kennwortauthentifizierung wiederhergestellt.

Verwenden Sie jetzt password als Kennwort, wenn dies von MySQL verlangt wird.

38
Ayan

Anscheinend gibt es viele Ursachen für diesen Fehler.

Meine Ursache/Lösung

In meinem Fall bestand die Ursache darin, dass mein Server so konfiguriert wurde, dass er nur Verbindungen von localhost akzeptiert. Ich habe es mit folgendem Artikel behoben: Wie kann ich den Fernzugriff auf den MySQL-Datenbankserver aktivieren? . Meine my.cnf-Datei hatte keine skip-networking-Zeile, daher habe ich gerade die Zeile geändert

bind-address = 127.0.0.1

zu

bind-address = 0.0.0.0

Dies erlaubt Verbindungen von jeder beliebigen IP-Adresse aus, nicht nur von 127.0.0.1.

Dann habe ich einen MySql-Benutzer erstellt, der von meinem Client-Computer aus eine Verbindung herstellen kann, indem er die folgenden Terminalbefehle ausführt:

# mysql -u root -p
mysql> CREATE USER 'username'@'1.2.3.4' IDENTIFIED BY 'password';
    -> GRANT ALL PRIVILEGES ON *.* TO 'username'@'1.2.3.4' WITH GRANT OPTION;
    -> \q

wobei 1.2.3.4 die IP des Clients ist, von dem aus Sie eine Verbindung herstellen möchten. Wenn Sie wirklich Probleme haben, können Sie '%' anstelle von '1.2.3.4' verwenden, um dem Benutzer die Verbindung von einer beliebigen IP-Adresse aus zu ermöglichen.

Andere Ursachen

Eine ziemlich ausführliche Liste finden Sie unter Ursachen für Fehler bei Zugriff verweigert .

24
AJ Richardson

Haben Sie versucht festzustellen, ob dies ein Problem mit Workbench oder ein allgemeines Verbindungsproblem ist? Versuche dies:

  1. Öffnen Sie ein Terminal
  2. Typ mysql -u root -p -h 127.0.0.1 -P 3306
  3. Wenn Sie sich erfolgreich verbinden können, wird nach der Eingabe Ihres Kennworts eine mysql-Eingabeaufforderung angezeigt (geben Sie quit ein und geben Sie dort ein, um den Vorgang zu beenden).

Berichten Sie zurück, wie das funktioniert hat.

17
Sergio

Ich hatte ein ähnliches Problem unter Mac OS und konnte es folgendermaßen beheben:

Führen Sie vom Terminal aus Folgendes aus:

mysql -u root -p -h 127.0.0.1 -P 3306

Dann wurde ich aufgefordert, das Passwort einzugeben. Ich habe gerade enter gedrückt, da kein Passwort eingerichtet wurde.

Ich habe eine Nachricht wie folgt erhalten:

Willkommen beim MySQL-Monitor. Befehle enden mit; oder\g. Ihr MySQL Verbindungs-ID ist 181. Serverversion: 8.0.11 Homebrew.

Wenn Sie sich bei mysql> erfolgreich angemeldet haben, führen Sie den folgenden Befehl aus:

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

Sie sollten eine Nachricht wie diese erhalten:

Abfrage OK, 0 Zeilen betroffen (0,19 Sek.)

Ihr Passwort lautet nun " password " und Ihr Benutzername ist " root ".

Viel Spaß beim Codieren :)

10
almawhoob

Ich musste Workbench als Administrator starten. Anscheinend verfügte es nicht über die erforderlichen Berechtigungen, um eine Verbindung zu meinem localhost-Datenbankserverprozess herzustellen.

Klicken Sie mit der rechten Maustaste auf die Workbench-Verknüpfung, und wählen Sie Run as Administrator aus. Im Eigenschaftenfenster der Verknüpfung können Sie auf "Erweitert" klicken und das Kontrollkästchen neben "Als Administrator ausführen" aktivieren, um die Workbench immer mit Administratorrechten auszuführen.

7
Steven Ryssaert

Ich hatte eine Weile mit diesem Problem zu kämpfen und habe MySQL mehrere Male neu installiert, bevor ich das entdeckte.

Ich weiß, dass der MySQL-Server ordnungsgemäß ausgeführt wurde, da ich über die Befehlszeile auf alle meine DBs zugreifen konnte.

Hoffe, das funktioniert für dich.

In MySQL Workbench (5.2.47 CE)

click Serverinstanzen verwalten (untere rechte Ecke)

klicken Sie auf Verbindung

in der Connection Box wählen Sie:

Lokale Instanz ($ ServerName) - [email protected]: 3306 '<' Standard (TCP/IP)>

klicken Sie auf Ausgewählte bearbeiten ...

unter Parameter, Hostname change localhost oder 127.0.0.1 auf Ihren NetBIOS-Namen

klicken Sie auf Test Connection

Wenn das für dich funktioniert, großartig. Wenn nicht, ändern Sie den Hostnamen wieder in seinen ursprünglichen Zustand.

4
KuBand12

Der Fehler tritt auf, weil der MySQL-Server nicht auf Ihrem Computer gestartet wird. Sie sollten es manuell starten. Führen Sie folgende Schritte aus:

  1. Laden Sie den Wamp-Server entsprechend Ihrer Bit-Version (32-Bit oder 64-Bit) in Ihren Computer herunter und installieren Sie ihn ( http://wampserver-64bit.en.softonic.com/ ). Über diesen Link können Sie den Wamp-Server für 64-Bit herunterladen.

  2. Sobald Sie es installiert haben, können Sie es doppelklicken und ausführen. (Sie können ein Symbol in der rechten Seite der Taskleiste sehen. Es kann ausgeblendet sein. Sie können also auf den Pfeil klicken, der die ausgeführten Anwendungen zum Ausblenden von Apps anzeigt.) Klicken Sie auf das Symbol und gehen Sie zu Mysql

  3. Gehen Sie dann zu Service und dort finden Sie Start/Resume Services, klicken Sie darauf.

  4. Und jetzt ist es fertig. Öffnen Sie die Mysql-Workbench und sehen Sie. Es wird funktionieren.

4
Sanjaya

Führen Sie den ALTER USER-Befehl aus. Stellen Sie sicher, dass Sie das Kennwort in ein sicheres Kennwort Ihrer Wahl ändern. 

1 - Sudo mysql # Login to mysql

2 - # Run the below command

mysql> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';

Jetzt können Sie mit dem neuen Passwort darauf zugreifen.

Ref: https://www.digitalocean.com/community/tutorials/how-to-install-mysql-on-ubuntu-18-04

3

Um für obere Versionen und spätere Besucher auf dem neuesten Stand zu sein:

Momentan arbeite ich an einem win7 64bit mit verschiedenen Tools, einschließlich Python 2.7.4 als Voraussetzung für Google Android.

Bei einem Upgrade von WB 6.0.8-win32 auf höhere Versionen mit 64-Bit-Leistung hatte ich einige Probleme. Zum Beispiel auf 6.3.5-winx64 hatte ich einen Fehler in der Detailansicht von Tabellen (ungeordnete Ansicht), wodurch ich auf 6.2 heruntergestuft wurde. 5-winx64.

Als GUI-Benutzer haben das einfache Vorwärts-/Rückwärts-Engineering und die relativen Elemente des Datenbankservers gut funktioniert. Wenn wir jedoch Database>Connect to Database versuchen, haben wir Not connected und einen Python-Fehler, wenn wir versuchen, eine Abfrage auszuführen. Der DB-Serverdienst ist jedoch absolut ausgeführt funktioniert gut und dieses Problem ist nicht vom Server und von der Workbench. Um das Problem zu lösen, müssen Sie Query>Reconnect to Server verwenden, um die DB-Verbindung explizit auszuwählen. Dann sieht fast alles gut aus (dies liegt möglicherweise an meinen mehrfachen Datenbankverbindungen, und ich konnte keine Lösung finden, um die Standard-Datenbankverbindung in Workbench zu definieren).

Als Anmerkung: Da ich die neueste Xampp-Version verwende (sogar in Linux süchtig :)), verwendet Xampp vor kurzem mariadb 10 anstelle von mysql 5.x, was dazu führt, dass die Version der mysql-Datei 10 einige Probleme verursacht, wie beispielsweise das Forward-Engineering von Prozeduren das kann zwar mit mysql_upgrade.exe aufgelöst werden, aber wenn wir versuchen, eine db-verbindung zu überprüfen, informiert wb über die falsche version, es ist jedoch nicht kritisch und funktioniert gut.

Fazit: Daher können db-Verbindungsprobleme in Workbench manchmal auf sich selbst und nicht auf den Server zurückzuführen sein (wenn Sie keine anderen relativen Probleme mit der db-Verbindung haben).

1
Alix

Ich war zuvor in ähnlichen Situationen und fand beim letzten Mal ein Problem mit dem Windows-Update (nicht sicher). Dieses Mal habe ich die MySQL-Workbench geöffnet und keine Verbindung zu meiner lokalen Datenbank gefunden. Ich kann meine Tabellen nicht sehen, aber gestern konnte ich mich mit der Datenbank verbinden.

Ich fand heraus, dass meine Ursache darin liegt, dass der mysql-Dienst nicht ausgeführt wird, nachdem er meinen Computer für einige Zeit in Ruhe gelassen und wieder aktiviert hat. Meine Lösung: Starten Sie den Dienst "mysql" neu und führen Sie die Workbench erneut aus. Der Neustart des Dienstes dauert eine Weile, aber er funktioniert. 

0
WesternGun

grund für mich war, dass ich versuchte, die neueste MySQL Workbench 8. * zu verwenden, um eine Verbindung zu MySQL Server 5.1 herzustellen (beide laufen unter Windows Server 2012). Bei der Deinstallation von MySQL Workbench 8. * und der Installation von MySQL Workbench 6.3.10 wurde eine Verbindung mit der localhost-Datenbank hergestellt

0
alex

In meinem Fall habe ich mysqlworkbench soeben installiert, aber nachdem ich mysqlworkbench deinstalliert und das MySQL-Installationsprogramm installiert habe, ist es für 32 und 64 Bit gleich, danach funktioniert es wie ein Zauber. Ich hoffe es könnte nützlich sein

0
Shaik Elias

Mein Problem war, dass der MySQL-Server nicht wirklich installiert war. Ich hatte den MySQL-Installer ausgeführt, der MySQL-Server wurde jedoch nicht installiert.

Ich habe das Installationsprogramm erneut ausgeführt, auf "Hinzufügen" geklickt und den MySQL-Server der Liste hinzugefügt. Jetzt funktioniert es gut.

0
Pikamander2

Ich hatte auch eine Weile mit diesem Problem zu kämpfen.

Ich kam über diesen interessanten Thread aus dem MySQL-Forum: http://forums.mysql.com/read.php?11,11388,11388#msg-11388

Ich kam auch (offensichtlich) auf etwas gutes SO Q/A.

Es scheint, dass die in der Frage von "user948950" erwähnte Nachricht aus einer Vielzahl von Gründen stammen kann: Protokolldatei zu groß, falsche Werte der mysql.ini-Datei, Leerzeichen im Dateipfad, Sicherheits-/ACL-Problem, alte Einträge in der Registrierung und so weiter.

Nach 3h versuchte ich das Problem zu beheben ... Ich gab auf und entschied mich für eine gute alte Neuinstallation.

Dies ist, wo dieser Beitrag aus (wieder) diesem MySQL-Thread nützlich war , ich zitiere:

Gary Williams schrieb: Hallo Leute, 

Ich hatte genau das gleiche Problem und so habe ich es zum Laufen gebracht. für mich, beginnend mit einer nicht funktionierenden Installation. 

  1. Stoppen Sie den Windows-Dienst für eine vorhandene MySQL-Installation. 

  2. Deinstallieren Sie MySQL. 

Wie bei den meisten Deinstallationen bleiben alte Dateien zurück. Wenn Ihr Verzeichnis ist C:\mysql\etc und löscht dann die Dateien "innob" usw., aber lassen Sie die Verzeichnisse selbst sowie vorhandene Datenbanken in "data" . Wenn das Verzeichnis C:\Programme\etc ist, löschen Sie alle mysql Verzeichnisse. 

  1. Es lohnt sich, regedit auszuführen, um sicherzustellen, dass die alten Registrierungseinträge auch von der Deinstallation gelöscht werden. Wenn nicht, löschen Sie sie. 

  2. Es ist jedoch in Ordnung, das neue .msi-Installationsprogramm zu verwenden (nur wichtige Dateien). 

  3. Verwenden Sie nicht ihren Standardinstallationspfad! Einige Genies setzen einen Pfad mit Leerzeichen! Wählen Sie die benutzerdefinierte Installation und wählen Sie einen sinnvollen Pfad aus dh C:\mysql (Anmerkung von Adrien: C:\mysqldata für ... die Daten)

  4. Ändern Sie die Sicherheitseinstellungen nicht. Deaktivieren Sie das entsprechende Kontrollkästchen, um die Installation abzuschließen, ohne ein Stammverzeichnis festlegen zu müssen Passwort. 

Ich glaube, ich habe mich an alles erinnert. 

Viel Glück 

Gary

Ich bekam Probleme, als ich einfach die Datenbanken, die ich in meinem vorherigen "data" -Verzeichnis hatte, in das neue kopierte/einfügte. Die Arbeit, die ich fand, bestand also darin, jede Datenbank zu exportieren (ich weiß ... eine Menge Spaß) und sie dann nacheinander erneut zu importieren. 

Zu Ihrer Information: Ich habe den folgenden Befehl zum Importieren von C:/<MySQLInstallDir>/My SQL Server x.x/bin/mysql -u root -p <dbName> < "<dirPathOfDump>\<dumpName>.sql" verwendet, das ist zum Beispiel C:/mysql/MySQL Server 5.6/bin/mysql -u root -p mySupaCoolDb < "C:\mySupaCoolDbDump20130901.sql"

0
Adrien Be