Bild herunterladenAuswählen eines MySQL-Images Docker-Suche MySQL MySQL 5.7-Image herunterladen Docker-Pull MySQL:5.7 MySQL-Bild anzeigen Docker-Bilder Erstellen Sie einen MySQL Master-SlaveMaster docker run --name mysql-master -p 3307:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 Sklave docker run --name mysql-slave -p 3308:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7 Die vom Master nach außen zugeordnete Portnummer ist 3307, und die vom Slave nach außen zugeordnete Portnummer ist 3308 Container anzeigen Docker PS Verbindungstest Konfigurieren des MastersSie können den Container auf zwei Arten betreten: docker exec -it 1b166e12ad6b /bin/bash #1b166e12ad6b ist die Container-ID docker exec -it mysql-master /bin/bash #mysql-master ist der Containername Ändern Sie die Konfigurationsdatei /etc/mysql/my.cnf vim /etc/mysql/my.cnf Der vim-Befehl wurde nicht gefunden. Installieren Sie das vim-Tool im Docker. Geben Sie die folgenden beiden Befehle ein, um vim zu installieren apt-get-Aktualisierung apt-get installieren vim Nachdem die Installation abgeschlossen ist, ändern Sie die Konfigurationsdatei my.cnf vim /etc/mysql/my.cnf [mysqld] ## Beachten Sie, dass die Server-ID=100 innerhalb desselben LAN eindeutig sein muss ## Binärprotokollfunktion aktivieren, Sie können jedes Protokoll (jeden Schlüssel) nehmen log-bin=master-bin binlog-format=ROW // Binäres Protokollformat, es gibt drei Typen: Zeile, Anweisung, gemischt Nach der Konfiguration MySQL neu starten Dienst MySQL Neustart Durch einen Neustart wird der Docker-Container gestoppt. Verwenden Sie den folgenden Befehl, um den Container neu zu starten Docker ps -a Docker startet MySQL-Master Erstellen eines Datenbanksynchronisierungskontos Geben Sie den mysql-master-Container ein docker exec -it 1b166e12ad6b /bin/bash Melden Sie sich bei MySQL an und autorisieren Sie das Synchronisierungskonto für den Slave-Host mysql -uroot -p123456 ERSTELLEN SIE BENUTZER 'Slave'@'%' IDENTIFIZIERT DURCH '123456'; GRANT REPLICATION SLAVE, REPLICATION CLIENT ON *.* AN 'Slave'@'%'; An diesem Punkt ist die Masterkonfiguration abgeschlossen Sklave Verwenden Sie einen dem Master ähnlichen Befehl, um den Container aufzurufen docker exec -it mysql-slave /bin/bash Ändern Sie die Konfigurationsdatei my.cnf und denken Sie daran, den Befehl vim zu installieren vim /etc/mysql/my.cnf [mysqld] ## Legen Sie die Server-ID fest. Beachten Sie, dass sie eindeutig sein muss: Server-ID=101 ## Binäres Logging aktivieren, falls der Slave als Master anderer Slaves verwendet wird log-bin=mysql-slave-bin ## relay_log-Konfigurations-Relay-Protokoll relay_log=mysql-relay-bin read_only=1 ## Auf schreibgeschützt setzen. Wenn dieser Eintrag nicht gesetzt ist, bedeutet dies, dass der Slave lesen und schreiben kann Starten Sie MySQL neu Dienst MySQL Neustart Starten des Containers Docker startet MySQL-Slave Aktivieren Sie die Master-Slave-ReplikationÖffnen Sie zunächst zwei Terminals und geben Sie die Master- und Slave-Container ein. Geben Sie MySQL ein MySQL-Master-Operationen mysql -uroot -p123456 Masterstatus anzeigen; MySQL-Slave-Betrieb Hinweis: Denken Sie daran, master_log_file='', master_log_pos= in die Ergebnisse zu ändern, die Sie auf dem Mastercomputer angezeigt haben mysql -uroot -p123456 Ändern Sie Master in master_host='10.0.3.2', master_user='slave', master_password='123456', master_port=3307, master_log_file='master-bin.000001', master_log_pos=617; Slave starten; Slave-Status anzeigen \G; TesterfolgMySQL-Master-Operationen Datenbank Dockertest erstellen; MySQL-Slave-Betrieb Die auf dem Master erstellte Datenbank wird auf dem Slave angezeigt und ist damit ein Erfolgsnachweis. Artikelreferenzlink Detaillierte Informationen finden Sie unter Dies ist das Ende dieses Artikels zum Bereitstellen von MySQL mit Docker als Master und Slave. Weitere Informationen zum Bereitstellen von MySQL mit Docker finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
<<: Verwendung und Optimierung der MySQL COUNT-Funktion
>>: Webdesign-Erfahrung: Das Navigationssystem schlank machen
Ein Webserver kann mehrere Websites mit unabhängi...
Im vorherigen Artikel wurde erklärt, wie man das ...
Inhaltsverzeichnis 1. Flink-Übersicht 1.1 Grundle...
Der benutzerdefinierte Kapselungscode der Vue-But...
<br />Ich war schon immer der Meinung, dass ...
Finden Sie das Problem Schauen wir uns zunächst d...
Vorwort Für Datei- oder Verzeichnisberechtigungen...
Beim Erstellen von Formularen kommt es häufig vor...
<br />Statistiken zufolge hat sich die durch...
Vorwort Ich bin es gewohnt, Less/Sass zu schreibe...
CSS-Stile html,Text{ Breite: 100 %; Höhe: 100%; R...
Aus einer Laune heraus habe ich eine Fallstudie ü...
【SQL】 Zusammenfassung der SQL-Paging-Abfragen Wäh...
MySQL meldet einen Fehler beim Ausführen einer Ab...
Die Echtzeitreplikation ist die wichtigste Method...