Perfekte Lösung für das Problem, dass Navicat nach der Installation von MySQL im Docker keine Verbindung herstellen kann

Perfekte Lösung für das Problem, dass Navicat nach der Installation von MySQL im Docker keine Verbindung herstellen kann

1. Docker zieht das Image

Docker Pull MySQL (standardmäßig die neueste Version ziehen)

2. Führen Sie MySQL aus

docker run -p 3308:3306 --name mysql -e MYSQL_ROOT_PASSWORD=123456 -d mysql

Containername: mysql Passwort: 123456

3. Überprüfen Sie, ob es läuft

Docker ps -a

4. Sehen Sie sich das Startprotokoll an

Docker-Protokolle MySQL

mysql ist der Name des Containers, der gerade gestartet wurde. Stellen Sie sicher, dass mysql normal gestartet wird.

5. Fehler

Als ich Navicat zum Verknüpfen verwendet habe, ist mir folgender Fehler aufgefallen

Wir benötigen folgende Bearbeitung

1. Rufen Sie den MySQL-Client auf

docker exec -it c6c8e8e7940f /bin/bash

Wobei c6c8e8e7940f der Name meines MySQL-Containers ist

----Äquivalenter Befehl docker exec -it mysql /bin/bash

mysql -u root -p123456

123456 ist das Anmeldekennwort von MySQL, das beim Ausführen von Docker festgelegt wird

2. Benutzerinformationen anzeigen

Wählen Sie Host, Benutzer, Plugin, Authentifizierungszeichenfolge aus mysql.user aus.

3. Setzen Sie Ihr Passwort zurück

ALTER USER 'root'@'%' IDENTIFIZIERT MIT mysql_native_password DURCH 'newpassword'

newpassword ist das neue Passwort

Ich habe das Passwort auf „mysql“ gesetzt.

4. Stellen Sie die Verbindung mit Navicat wieder her

Anhang: Es kann auch ein Firewall-Problem sein

sudo firewall-cmd --add-port=3306/tcp (Port 3306 öffnen)

oder

sudo systemctl stop firewalld (Firewall ausschalten)

Ergänzung: MySQL 8 in Docker installieren und Remote-Verbindung konfigurieren

Schritt 1: Laden Sie das MySQL-Image herunter

Docker-Pull MySQL

Standardmäßig wird die neueste stabile Version heruntergeladen

Schritt 2: Starten Sie das MySQL-Image

docker run --name dockermysql -p 3306:3306 -e MYSQL_ROOT_PASSWORD=mysqlpassword -d mysql

1. --name ist der Alias ​​des Bildes

2. -p ordnet 3306 3306 zu (Docker ist eine virtuelle Maschine mit eigenem Port)

3. -e MYSQL_ROOT_PASSWORD=mysqlpassword Legen Sie das MySQL-Serverkennwort fest (wird später benötigt, unbedingt merken)

4. -d Backend-Start

5. Der Name des zu startenden Images (kann durch eine ID ersetzt werden)

Schritt 3: Abfragen des Boot-Images

Docker PS

wie folgt:

Schritt 4: Den Container betreten

Docker exec -it DockerMySQL Bash

dockermysql ist der Name des Images, der durch die ID ersetzt werden kann

Schritt 5: Bei MySQL anmelden

mysql -u root -p

Geben Sie dann das oben festgelegte Passwort ein

Schritt 6: Fernzugriff einrichten

Datenbank wechseln (das sollte die Standardeinstellung sein, Sie müssen nicht wechseln, wechseln Sie sie nur aus Sicherheitsgründen)

benutze MySQL;

Ändern der Remote-Link-Autorisierung

gewähre 'root'@'%' alle Privilegien für *.*;

Schritt 7: Navicat meldet Fehler 2059 beim Verbinden

Der Fehler wird durch ein Problem mit der Verschlüsselungsmethode verursacht

Überprüfen:

Wählen Sie Host, Benutzer, Plugin vom Benutzer aus;

Die Ergebnisse vor der Änderung sind wie folgt:

Führen Sie den Änderungsbefehl aus:

Ändern Sie den Benutzer „root“@„%“, identifiziert mit „mysql_native_password“ durch „IhrPasswort“.

Ändern Sie Ihr MySQL-Passwort

Das Ergebnis nach erfolgreicher Änderung sieht wie folgt aus:

Das Obige ist meine persönliche Erfahrung. Ich hoffe, es kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden. Sollten dennoch Fehler oder unvollständige Überlegungen vorliegen, freue ich mich über eine Korrektur.

Das könnte Sie auch interessieren:
  • Beheben Sie das Problem, dass Navicat keine Verbindung zum MySQL-Server im Centos-System in VMware herstellen kann
  • Über das Problem der langsamen Verbindung von Navicat zur MySql-Datenbank
  • Detailliertes Tutorial zur Registrierung und Aktivierung von Navicat für MySQL 15
  • So stellen Sie mit Navicat Premium eine Remoteverbindung zur MySQL-Datenbank her
  • Beheben Sie das Problem des Fehlers 10038 bei der Remoteverbindung mit MySQL in Navicat
  • Navicat für MySQL 11 Registrierungscode\Aktivierungscode-Zusammenfassung
  • Detaillierte Erklärung der langsamen Remote-Verbindung von Navicat zu MySQL
  • Navicat Premium betreibt MySQL-Datenbank (führt SQL-Anweisungen aus)
  • Häufige Fehler und Lösungen zum Verbinden von Navicat mit einer virtuellen MySQL-Maschine
  • Wenn Navicat Premium eine Verbindung zur Datenbank herstellt, wird die Fehlermeldung „2003 Verbindung zum MySQL-Server auf „localhost“ nicht möglich (10061)“ angezeigt.
  • Detaillierte Erklärung zum Erstellen geplanter MySql-Aufgaben in Navicat
  • Lösung für das Problem, dass Navicat keine Remoteverbindung zum MySql-Server herstellen kann
  • So verwenden Sie Navicat zum Bedienen von MySQL

<<:  So erstellen Sie ein Django-Projekt und stellen eine Verbindung zu MySQL her

>>:  img usemap Attribut China Karte Link

Artikel empfehlen

Beispiel und Update für die Erstellung von HTML5+CSS3-Headern

Beim letzten Mal haben wir uns zwei Header-Layout...

Ein Artikel zum Umgang mit Mysql-Datums- und Zeitfunktionen

Inhaltsverzeichnis Vorwort 1. Aktuelle Uhrzeit er...

MySQL-Tabellenfeld Zeiteinstellung Standardwert

Anwendungsszenario In der Datentabelle muss die A...

Eine kurze Einführung in Linux-Umgebungsvariablendateien

Im Linux-System können Umgebungsvariablen entspre...

So ändern Sie die Server-UUID in MySQL

Quelle des Problems: Wenn der Slave-Server der ge...

Lösung zur Bereinigung des Docker-Festplattenspeichers

Vor einiger Zeit stieß ich auf das Problem, dass ...

Tipps zum Escapen von HTML-Texten

Heute habe ich auf CSDN einen kleinen Trick zum Es...

So implementieren Sie eine steuerbare gepunktete Linie mit CSS

Vorwort Die Verwendung von CSS zum Generieren gep...

Beispielanalyse des Seitenaufteilungsprinzips des MySQL-Clusterindex

Dieser Artikel veranschaulicht anhand eines Beisp...