Vorwort Kürzlich stieß ich auf eine Anforderung. Aufgrund der eigenen Geschäftstätigkeit des Unternehmens müssen einige Tabellen zwischen zwei Datenbanken Daten in Echtzeit und bidirektional synchronisieren, und die Ausfallzeit einer Datenbank wirkt sich nicht auf die andere Datenbank aus. Hier zeichne ich meine eigene technische Recherche auf, um sie bei einer späteren Rekonstruktion zu verwenden. Schauen wir uns ohne weitere Umschweife die ausführliche Einführung an. Installieren Sie MySQL 5.7 Es wird empfohlen, direkt zur offiziellen Website https://dev.mysql.com zu gehen, um die Yum-Quelle für die Installation herunterzuladen, da dies sicher und bequem ist. wget https://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm yum -y installiere mysql57-community-release-el7-11.noarch.rpm yum -y installiere MySQL-Server # MySQL 5.7 installieren systemctl starte mysqld # Starten Sie MySQL Dual Active konfigurieren my.cnf-Konfiguration Hier führen wir nur eine einfache Dual-Master-Konfiguration durch und es wird keine datenbankbezogene Optimierung durchgeführt. Wenn Sie eine Optimierung benötigen, können Sie privat chatten. Die Konfiguration von MySQL1 ist wie folgt [mysqld] vim /etc/meine.cnf Datenverzeichnis=/var/lib/mysql socket=/var/lib/mysql/mysql.sock symbolische Links = 0 log-error=/var/log/mysqld.log pid-Datei=/var/run/mysqld/mysqld.pid skip_name_resolve=EIN #Einfaches Passwort festlegen validate_password_policy=0 validate_password_length=1 ###Hauptkonfiguration log_bin=bin_log Server-ID = 1 binlog-do-db=ziyun # Von welcher Bibliothek darf repliziert werden slave_parallel_type='logical_clock' #Setzen Sie den Replikationstyp auf LOGICAL_CLOCK Slave_Parallel_Worker = 4 #Setzen Sie die Anzahl der parallelen Operationen auf 4 ###Aus der Konfiguration relay-log=relay-bin relay-log-index=relay-bin.index replizieren-do-db=ziyun # Replikation der Hauptdienstbibliothek zulassen replicate-do-table=ziyun.test1 # Welche Tabelle der Hauptdienstbibliothek darf repliziert werden replicate-do-table=ziyun.test2 Die Konfiguration von MySQL2 ist grundsätzlich die gleiche wie oben, außer dass MySQL-Befehlskonfiguration Folgendes wird in der SQL-Befehlszeilenschnittstelle konfiguriert Hauptkonfiguration: mysql> ERSTELLEN SIE BENUTZER 'Slave'@'192.168.1.100' IDENTIFIZIERT DURCH '123.com'; mysql> GRANT REPLICATION SLAVE ON *.* TO 'slave'@'192.168.1.100'; # Autorisierter Replikationsbenutzer und Passwortmysql> show master status; +-----------------+----------+--------------+------------------+-------------------+ | Datei | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set | +-----------------+----------+--------------+------------------+-------------------+ | bin_log.000002 | 8384 | ziyun | | | +-----------------+----------+--------------+------------------+-------------------+ 1 Zeile im Satz (0,00 Sek.) Aus der Konfiguration: mysql> ÄNDERN SIE MASTER IN -> MASTER_HOST='192.168.1.101', -> MASTER_USER='Sklave', -> MASTER_LOG_FILE='bin_log.000002', -> MASTER_LOG_POS=8384; Abfrage OK, 0 Zeilen betroffen, 2 Warnungen (0,01 Sek.) mysql> Slave starten; Abfrage OK, 0 Zeilen betroffen (0,01 Sek.) mysql> Slave-Status anzeigen\G Slave_IO_Running: Ja Slave_SQL_Running: Ja # Stellen Sie sicher, dass alle oben genannten Punkte zutreffen und keine Fehler vorliegen. Die gleiche Konfiguration kann auf MySQL2 durchgeführt werden Dual-Master-Synchronisationstest Hier habe ich auf beiden Seiten eine Ziyun-Datenbank erstellt und Test1-Test2-Test3-Tabellen erstellt. Die Testergebnisse sind wie folgt: Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels Ihnen bei Ihrem Studium oder Ihrer Arbeit helfen kann. Wenn Sie Fragen haben, können Sie eine Nachricht hinterlassen. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Das könnte Sie auch interessieren:
|
<<: VUE implementiert einen Beispielcode für das Spiel Flappy Bird
>>: Detailliertes Verständnis von umask in den neuen Linux-Dateiberechtigungseinstellungen
Es sind drei oder vier Monate vergangen, seit ich ...
Sie können die Containerprotokolle über den Befeh...
Der standardmäßige Programmveröffentlichungspfad ...
Inhaltsverzeichnis 1. Installieren Sie das Vue-Ge...
Überprüfen Sie, was in MySQL installiert ist grep...
Tatsächlich haben viele Unternehmen ähnliche Funk...
Inhaltsverzeichnis MySQL-Löschsyntax-Aliasproblem...
Inhaltsverzeichnis Überblick Verwenden zugeordnet...
Installations-Tutorial zur dekomprimierten Versio...
Ich habe ein Dockerfile für OpenResty auf CentOS7...
Hinweis: Die derzeit beliebtesten Front-End-Frame...
Inhaltsverzeichnis 1. Konzept 1.1 Definition 1.2 ...
Inhaltsverzeichnis 1. Was ist eine Vorlagenzeiche...
Inhaltsverzeichnis 1. Verständnis der Gleichheits...
Inhaltsverzeichnis Base Rückgabetyp String und Bo...