Verwenden Sie das offizielle MySQL-Image, um den Datenbankdienst zu erstellen. Die aktuell neueste Version entspricht der Version 8.0.19. Um Kompatibilitätsprobleme in den folgenden Schritten nach der Aktualisierung der offiziellen Version zu vermeiden, können Sie bei Verwendung des Images die Version 8.0.19 angeben. 1 Konfigurations- und Datenverzeichnisse erstellenErstellen Sie auf diesem Computer ein Verzeichnis, um MySQL-Konfigurationen und -Daten zu speichern.
Docker-Pull MySQL 3 Kopieren Sie die Konfigurationsdatei vom Image auf den HostDie internen Konfigurationsdateien des Images werden im Verzeichnis /etc/mysql gespeichert. Ein temporärer Container wird erstellt, um das Konfigurationsdateiverzeichnis in das lokale Verzeichnis ~/docker/conf/ zu kopieren. # Erstellen Sie einen Container mit dem Namen mysql docker run --name mysql -e MYSQL_ROOT_PASSWORD=crane -d mysql # Kopieren Sie die Konfigurationsdatei im Docker-Container in das lokale Verzeichnis ~/docker/conf/mysql docker cp mysql:/etc/mysql /Users/crane/docker/conf/ # Stoppen und löschen Sie den temporären Container docker stop mysql Docker RM MySQL 4 Erstellen und Ausführen des MySQL-ContainersHängen Sie die Hostkonfigurations- und Datendateiverzeichnisse in den Docker-Container ein und führen Sie die folgenden Befehle im Terminal aus: # ~/docker/conf/mysql enthält die MySQL-Konfigurationsdatei # ~/docker/data/mysql enthält die MySQL-Datendatei # Die lokalen Ports 3306 und 33060 sind den Ports 3306 bzw. 33060 in Docker zugeordnet # Das Root-Passwort der Datenbank lautet crane # -d Docker im Hintergrund ausführen docker run --name mysql -v ~/docker/conf/mysql:/etc/mysql/conf.d -v ~/docker/data/mysql:/var/lib/mysql -p 3306:3306 -p 33060:33060 -e MYSQL_ROOT_PASSWORD=crane -d mysql 5 Host stellt Verbindung zur Datenbank her5.1 Terminal-BefehlsverbindungNachdem der Container im vorherigen Schritt erfolgreich gestartet wurde, führen Sie den folgenden Befehl im Host-Terminal aus, um eine Verbindung zur Datenbank herzustellen # Geben Sie den folgenden Befehl ein und drücken Sie die Eingabetaste. Geben Sie das Datenbankkennwort crane ein mysql -uroot -p --protocol=tcp Der obige Befehl gibt an, dass TCP für die Verbindung mit der Datenbank verwendet werden soll. Wenn Sie --protocol=tcp nicht hinzufügen, wird die Standardverbindung über Socket hergestellt und der folgende Fehler wird gemeldet 5.2 Datenbank-Tool-VerbindungSie können auch eine Verbindung mithilfe von Datenbanktools wie DataGrip herstellen, um entsprechende Datenoperationen durchzuführen. 6 MySQL-Protokoll anzeigenWährend des normalen Betriebs des Containers können Sie den folgenden Befehl verwenden, um das Protokoll anzuzeigen Docker-Protokolle -f MySQL Verwenden Sie beim Erstellen von Diensten extern bereitgestellte Konfigurationen und Daten, um die Datensicherung und -migration zu erleichtern. Wenn Sie einen Container auf einem anderen Host mit derselben Version des Docker-Images starten und die gesicherte Konfiguration und Daten mounten, erhalten Sie genau dieselbe Datenbankkonfiguration und dieselben Daten. Siehe das offizielle MySQL-Image 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. Das könnte Sie auch interessieren:
|
>>: So verwenden Sie async und await in JS
Inhaltsverzeichnis einführen Implementierungsschr...
<Vorlage> <div Klasse="Demo"&g...
Benutzertabelle, ID-Nummer muss eindeutig sein, M...
Code kopieren Der Code lautet wie folgt: <span...
Das Docker-Repository selbst ist sehr langsam, ab...
Welche Rolle spielt http im Knoten? Die Aufgabe d...
In diesem Artikel wird der spezifische Code für J...
Wir verwenden normalerweise Float-Layout, um die ...
Ich habe kürzlich an einem Projekt gearbeitet – Bu...
Was Sie lernen werden 1. Softwareinstallation und...
Führen Sie den Befehl aus, um das Plugin postcss-...
1. Einreihiger Überlauf 1. Wenn eine einzelne Zei...
Inhaltsverzeichnis Was ist das Protokoll langsame...
Dieser Artikel beschreibt, wie Sie den Chrome-Bro...
Inhaltsverzeichnis 1. Richtlinie Zollrichtlinie 2...