Mysql Installation on Linux
Inhaltsverzeichnis:
- Voraussetzungen
- installieren Sie MySQL
- Konfigurieren Sie den Master-Server
- Konfigurieren Sie den Slave-Server
- Testen Sie die Konfiguration
- Fazit
Die MySQL-Replikation ist ein Prozess, mit dem Sie Daten automatisch von einem Datenbankserver auf einen oder mehrere Server kopieren können.
MySQL unterstützt eine Reihe von Replikationstopologien, wobei die Master / Slave-Topologie eine der bekanntesten Topologien ist, bei denen ein Datenbankserver als Master fungiert, während ein oder mehrere Server als Slaves fungieren. Standardmäßig ist die Replikation asynchron, wobei der Master Ereignisse, die Datenbankänderungen beschreiben, an sein Binärprotokoll sendet und die Slaves die Ereignisse anfordern, wenn sie bereit sind.
In diesem Tutorial wird erklärt, wie Sie eine MySQL-Master / Slave-Replikation mit einem Master- und einem Slave-Server unter CentOS 7 einrichten. Dieselben Schritte gelten für MariaDB.
Diese Art der Replikationstopologie eignet sich am besten für die Bereitstellung von Lesereplikaten für die Leseskalierung, die Sicherung von Live-Datenbanken für die Notfallwiederherstellung und für Analysejobs.
Voraussetzungen
In diesem Beispiel wird davon ausgegangen, dass Sie zwei Server unter CentOS 7 haben, die über ein privates Netzwerk miteinander kommunizieren können. Wenn Ihr Hosting-Anbieter keine privaten IP-Adressen bereitstellt, können Sie die öffentlichen IP-Adressen verwenden und Ihre Firewall so konfigurieren, dass der Datenverkehr auf Port 3306 nur von vertrauenswürdigen Quellen zugelassen wird.
Die Server in diesem Beispiel haben die folgenden IPs:
Master IP: 192.168.121.59 Slave IP: 192.168.121.14
installieren Sie MySQL
Die Standardeinstellung Die CentOS 7-Repositorys enthalten keine MySQL-Pakete, daher installieren wir MySQL von ihrem offiziellen Yum-Repository. Um Probleme zu vermeiden, installieren wir auf beiden Servern dieselbe MySQL-Version 5.7.
Installieren Sie MySQL sowohl auf dem Master- als auch auf dem Slave-Server:
sudo yum localinstall
sudo yum install mysql-community-server
Starten Sie nach Abschluss der Installation den MySQL-Dienst und aktivieren Sie ihn für den automatischen Start beim Booten mit:
sudo systemctl enable mysqld
sudo systemctl start mysqld
Wenn der MySQL-Server zum ersten Mal gestartet wird, wird ein temporäres Kennwort für den MySQL-Root-Benutzer generiert. Verwenden Sie den folgenden Befehl grep, um das Kennwort zu finden:
sudo grep 'temporary password' /var/log/mysqld.log
Führen Sie den Befehl
mysql_secure_installation
, um Ihr neues Root-Passwort
mysql_secure_installation
und die Sicherheit der MySQL-Instanz zu verbessern:
mysql_secure_installation
Geben Sie das temporäre root-Passwort ein und beantworten Sie alle Fragen mit
Y
(Ja).
Konfigurieren Sie den Master-Server
Zuerst konfigurieren wir den Master-MySQL-Server und nehmen die folgenden Änderungen vor:
- Legen Sie fest, dass der MySQL-Server die private IP überwacht. Legen Sie eine eindeutige Server-ID fest. Aktivieren Sie die binäre Protokollierung.
Öffnen Sie dazu die MySQL-Konfigurationsdatei und fügen Sie die folgenden Zeilen in die MySQL-Konfigurationsdatei ein
Sektion:
sudo nano /etc/my.cnf
master: /etc/my.cnf
bind-address = 192.168.121.59 server-id = 1 log_bin = mysql-bin
Starten Sie anschließend den MySQL-Dienst neu, damit die Änderungen wirksam werden
sudo systemctl restart mysqld
Der nächste Schritt ist das Erstellen eines neuen Replikationsbenutzers. Melden Sie sich als Root-Benutzer beim MySQL-Server an:
mysql -uroot -p
Führen Sie in der MySQL-Eingabeaufforderung die folgenden SQL-Abfragen aus, mit denen der
replica
und dem Benutzer das
REPLICATION SLAVE
Privileg
REPLICATION SLAVE
:
CREATE USER 'replica'@'192.168.121.14' IDENTIFIED BY 'strong_password';
GRANT REPLICATION SLAVE ON *.* TO 'replica'@'192.168.121.14';
Stellen Sie sicher, dass Sie die IP mit Ihrer Slave-IP-Adresse ändern. Sie können den Benutzer nach Belieben benennen.
Führen Sie, während Sie sich noch in der MySQL-Eingabeaufforderung befinden, den folgenden Befehl aus, der den binären Dateinamen und die Position ausgibt.
SHOW MASTER STATUS\G
*************************** 1. row *************************** File: mysql-bin.000001 Position: 1427 Binlog_Do_DB: Binlog_Ignore_DB: Executed_Gtid_Set: 1 row in set (0.00 sec)
Notieren Sie sich den Dateinamen 'mysql-bin.000001' und die Position '1427'. Diese Werte benötigen Sie bei der Konfiguration des Slave-Servers. Diese Werte unterscheiden sich wahrscheinlich auf Ihrem Server.
Konfigurieren Sie den Slave-Server
Wie beim Master-Server oben nehmen wir die folgenden Änderungen am Slave-Server vor:
- Stellen Sie den MySQL-Server so ein, dass er auf dem privaten IPSet einen eindeutigen Server überwacht, der die binäre Protokollierung ermöglicht
Öffnen Sie die MySQL-Konfigurationsdatei und bearbeiten Sie die folgenden Zeilen:
sudo nano /etc/my.cnf
Slave: /etc/my.cnf
bind-address = 192.168.121.14 server-id = 2 log_bin = mysql-bin
Starten Sie den MySQL-Dienst neu:
sudo systemctl restart mysqld
Im nächsten Schritt konfigurieren Sie die Parameter, die der Slave-Server für die Verbindung zum Master-Server verwendet. Melden Sie sich bei der MySQL-Shell an:
mysql -uroot -p
Stoppen Sie zuerst die Slave-Threads:
STOP SLAVE;
Führen Sie die folgende Abfrage aus, mit der der Slave für die Replikation des Masters eingerichtet wird:
CHANGE MASTER TO
MASTER_HOST='192.168.121.59',
MASTER_USER='replica',
MASTER_PASSWORD='strong_password',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=1427;
Stellen Sie sicher, dass Sie die richtige IP-Adresse, den richtigen Benutzernamen und das richtige Kennwort verwenden. Der Name und die Position der Protokolldatei müssen mit den Werten übereinstimmen, die Sie vom Master-Server erhalten haben.
Sobald Sie fertig sind, starten Sie die Slave-Threads.
Testen Sie die Konfiguration
Zu diesem Zeitpunkt sollten Sie über ein funktionierendes Master / Slave-Replikationssetup verfügen.
Um sicherzustellen, dass alles wie erwartet funktioniert, erstellen wir eine neue Datenbank auf dem Masterserver:
mysql -uroot -p
CREATE DATABASE replicatest;
Melden Sie sich bei der Slave-MySQL-Shell an:
mysql -uroot -p
Führen Sie den folgenden Befehl aus, um alle Datenbanken aufzulisten:
SHOW DATABASES;
Sie werden feststellen, dass die auf dem Master-Server erstellte Datenbank auf dem Slave repliziert wird:
+--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | replicatest | | sys | +--------------------+ 5 rows in set (0.00 sec)
Fazit
In diesem Tutorial haben wir gezeigt, dass Sie eine MySQL-Master / Slave-Replikation unter CentOS 7 erstellen.
Fühlen Sie sich frei, einen Kommentar zu hinterlassen, wenn Sie Fragen haben.
Centos MySQL MariadbKonfigurieren oder Konfigurieren von Hotmail auf dem iPad / iPhone / iPod Touch mit Active Sync
Dieser Artikel zeigt Ihnen Schritt- Schritt-für-Schritt-Anleitung zum Einrichten von Windows Live Hotmail auf Ihrem iPad, iPhone und iPod Touch mit Active Sync.
So konfigurieren Sie mysql (mariadb) master
In diesem Handbuch zeigen wir Ihnen, wie Sie die MariaDB-Master / Slave-Replikation mit einem Master- und einem Slave-Server unter Debian 10 einrichten. MariaDB ist die Standardimplementierung von MySQL in Debian.
So konfigurieren Sie mysql master
Die MySQL-Replikation ist ein Prozess, mit dem Daten von einem Datenbankserver automatisch auf einen oder mehrere Server kopiert werden können. Dieses Tutorial behandelt ein grundlegendes Beispiel für die MySQL Master / Slave-Replikation mit einem Master- und einem Slave-Server unter Ubuntu 18.04.







