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

CentOS8-Netzwerkkarten-Konfigurationsdatei

1. Einleitung CentOS8-Systemupdate, die neue Vers...

Dateifreigabe zwischen Ubuntu und Windows unter VMware

In diesem Artikel wird die Methode zum Teilen von...

MySQL Master-Slave-Replikationsprinzip und zu beachtende Punkte

Vorne geschrieben Ich habe kürzlich ein spezielle...

Zusammenfassung des Verständnisses des virtuellen DOM in Vue

Es handelt sich im Wesentlichen um ein allgemeine...

js implementiert Axios Limit-Anforderungswarteschlange

Inhaltsverzeichnis Der Hintergrund ist: Was wird ...

So verwenden Sie die HTML 5 Drag & Drop-API in Vue

Die Drag & Drop-API fügt ziehbare Elemente zu...

So weisen Sie Feldern bei der MySQL-Abfrage Standardwerte zu

brauchen Wenn Sie ein Feld abfragen, müssen Sie e...

So fragen Sie einen Datensatz in MySQL ab, auf welcher Seite der Paging-Seite

Vorwort In der Praxis kann es zu folgendem Proble...

MySQL extrahiert zufällig eine bestimmte Anzahl von Datensätzen

Früher habe ich zur Handhabung dieser Art von Nut...

HTML-Grundlagen-Zusammenfassungsempfehlung (Textformat)

HTML-Tags zur Textformatierung 標簽 描述 <b> 定義...

Detaillierte Erklärung des Unterschieds zwischen CSS-Link und @import

Wie fügt man CSS in HTML ein? Es gibt drei Möglic...

Ein Problem mit der Bereitstellung von MySQL 5.5

MySQL-Bereitstellung Derzeit stellt das Unternehm...