Heim  >  Artikel  >  Betrieb und Instandhaltung  >  Was soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?

Was soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?

藏色散人
藏色散人Original
2022-10-21 16:06:158778Durchsuche

Lösung für das Versagen von Docker bei der Verbindung mit MySQL: 1. Zeigen Sie den laufenden Container über den Befehl „docker ps“ an. 2. Führen Sie „docker exec -it b30062adc08c /bin/bash“ aus, um den MySQL-Container aufzurufen Befehl „mysql -u root -p“; 4. Starten Sie MySQL neu und verwenden Sie dann Navicat, um eine erfolgreiche Verbindung herzustellen.

Was soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?

Die Betriebsumgebung dieses Tutorials: Linux7.3-System, Docker-Version 19.03, Dell G3-Computer.

Was soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?

Lösung für fehlgeschlagene Verbindung zu MySQL in Docker

Szenario: Nach der Installation der neuesten Version von MySQL im Docker-Container der virtuellen Maschine und der Verwendung von Navicat im Host zum Herstellen einer Verbindung zu MySQL in der virtuellen Maschine wird die folgende Fehlermeldung angezeigt erscheint:

Was soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?

2059: Authentifizierungs-Plugin „caching_sha2_password“ kann nicht geladen werden:

Lösung:

1. Überprüfen Sie zunächst den laufenden Container mit dem Docker-Befehl ps und stellen Sie sicher, dass die MySQL-Datei nicht geladen wird Wenn nicht, verwenden Sie den Docker-Startbefehl zum Starten (das im Bild unten gezeigte Ergebnis zeigt an, dass ein MySQL gestartet wurde)

Was soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?

2 Führen Sie dann docker exec -it b30062adc08c / aus. bin/bash, um den MySQL-Container aufzurufen

Was soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?

3 Geben Sie dann den Befehl mysql - u root -p ein, geben Sie dann Ihr eigenes Passwort ein und geben Sie schließlich die Anweisung zum Aktualisieren des Passworts ein:

ALTER USER 'root'@'% ' IDENTIFIED WITH mysql_native_password BY '123456';

Was soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?

4. Starten Sie abschließend MySQL neu und verwenden Sie dann Navicat, um eine erfolgreiche Verbindung herzustellen

Was soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?

Ergänzendes Wissen: Lösung für MySQL-Fehler in der lokalen Remote-Verbindung Docker (1251)

Der Fehler ist wie folgt:

Was soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?

Grund: MySQL 8.0 wird standardmäßig als Caching_sha2_password-Authentifizierungsmechanismus verwendet; der Client unterstützt die neue Verschlüsselungsmethode nicht

Lösung: Ändern Sie die Verschlüsselungsmethode des Benutzers (root)

1. Geben Sie in den MySQL-Container ein und geben Sie

docker exec -it mysql02 bash

Was soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?

2 ein Geben Sie 123456 ein wie im Bild gezeigt und drücken Sie die Eingabetaste.

3. Benutzerkonfigurationselemente festlegen Verschlüsselungsmethode

ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456'; //123456 ist MySQL-Login-PasswortWas soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?

(3) Überprüfen Sie die Benutzerinformationen erneut

select host,user,plugin,authentication_string von mysql.user;

(4) Verwenden Sie Navicate und andere Datenbanksoftware, um erneut eine Verbindung herzustellen, erfolgreich

(5)

Zusatz:

Wenn Sie den Container normal beenden möchten, Sie können den Container verlassen, indem Sie Strg+P+Q drücken

Container aus MySQL verlassen: Strg+D, zweimal drückenWas soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?

Empfohlenes Lernen: „

Docker-Video-Tutorial

Das obige ist der detaillierte Inhalt vonWas soll ich tun, wenn Docker keine Verbindung zu MySQL herstellen kann?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn