How to Install and Configure Git and GitHub on Windows
Indholdsfortegnelse:
- Forudsætninger
- Installer MySQL
- Konfigurer master-serveren
- Konfigurer slaveserveren
- Test konfigurationen
- Konklusion
MySQL-replikation er en proces, der giver dig mulighed for automatisk at kopiere data fra en databaseserver til en eller flere servere.
MySQL understøtter en række replikationstopologier, hvor Master / Slave-topologi er en af de mest kendte topologier, hvor en databaseserver fungerer som master, mens en eller flere servere fungerer som slaver. Som standard er replikationen asynkron, hvor masteren sender hændelser, der beskriver databasemodifikationer til dens binære log, og slaver anmoder om begivenhederne, når de er klar.
I denne tutorial vil vi forklare, hvordan man opsætter en MySQL Master / Slave-replikation med en master og en slaveserver på CentOS 7. De samme trin gælder for MariaDB.
Denne type replikationstopologi er bedst egnet til implementering af læse-replikater til læseskalering, live databaser-sikkerhedskopi til katastrofegendannelse og til analysejob.
Forudsætninger
I dette eksempel antager vi, at du har to servere, der kører CentOS 7, som kan kommunikere med hinanden over et privat netværk. Hvis din hostingudbyder ikke leverer private IP-adresser, kan du bruge de offentlige IP-adresser og konfigurere din firewall til kun at tillade trafik på port 3306 fra pålidelige kilder.
Serverne i dette eksempel har følgende IP'er:
Master IP: 192.168.121.59 Slave IP: 192.168.121.14
Installer MySQL
Standard CentOS 7-lagringerne inkluderer ikke MySQL-pakker, så vi installerer MySQL fra deres officielle Yum-arkiv. For at undgå problemer, installerer vi den samme MySQL version 5.7 på begge servere.
Installer MySQL på både Master- og Slave-serverne:
sudo yum localinstall
sudo yum install mysql-community-server
Når installationen er afsluttet, skal du starte MySQL-tjenesten og aktivere den til automatisk at starte med boot med:
sudo systemctl enable mysqld
sudo systemctl start mysqld
Når MySQL-serveren starter første gang, genereres der en midlertidig adgangskode til MySQL-rodbrugeren. Brug følgende grep-kommando til at finde adgangskoden:
sudo grep 'temporary password' /var/log/mysqld.log
Kør kommandoen
mysql_secure_installation
at indstille din nye root-adgangskode og forbedre sikkerheden i MySQL-forekomsten:
mysql_secure_installation
Indtast den midlertidige root-adgangskode, og svar
Y
(ja) på alle spørgsmål.
Konfigurer master-serveren
Først konfigurerer vi master MySQL-serveren og foretager følgende ændringer:
- Indstil MySQL-serveren til at lytte på den private IP.Sæt en unik server-ID. Aktiver den binære logføring.
Dette gøres ved at åbne MySQL-konfigurationsfilen og tilføje følgende linjer i
afsnit:
sudo nano /etc/my.cnf
mester: /etc/my.cnf
bind-address = 192.168.121.59 server-id = 1 log_bin = mysql-bin
Når det er gjort, skal du genstarte MySQL-tjenesten, så ændringerne træder i kraft
sudo systemctl restart mysqld
Det næste trin er at oprette en ny replikationsbruger. Log ind på MySQL-serveren som root-bruger:
mysql -uroot -p
Fra inde i MySQL-prompten skal du køre følgende SQL-forespørgsler, der opretter
replica
og giver
REPLICATION SLAVE
privilegiet til brugeren:
CREATE USER 'replica'@'192.168.121.14' IDENTIFIED BY 'strong_password';
GRANT REPLICATION SLAVE ON *.* TO 'replica'@'192.168.121.14';
Sørg for at ændre IP'en med din slave-IP-adresse. Du kan navngive brugeren, som du vil.
Mens du stadig er inde i MySQL-prompten, skal du udføre følgende kommando, der udskriver det binære filnavn og placering.
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)
Noter filnavnet 'mysql-bin.000001' og position '1427'. Du har brug for disse værdier, når du konfigurerer slaveserveren. Disse værdier vil sandsynligvis være forskellige på din server.
Konfigurer slaveserveren
Som for masterserveren ovenfor, foretager vi følgende ændringer på slaveserveren:
- Indstil MySQL-serveren til at lytte på den private IPSet en unik server IDEnable den binære logging
Åbn MySQL-konfigurationsfilen, og rediger følgende linjer:
sudo nano /etc/my.cnf
slave: /etc/my.cnf
bind-address = 192.168.121.14 server-id = 2 log_bin = mysql-bin
Genstart MySQL-tjenesten:
sudo systemctl restart mysqld
Det næste trin er at konfigurere de parametre, som slaveserveren vil bruge til at oprette forbindelse til masterserveren. Login til MySQL-shell:
mysql -uroot -p
Først skal du stoppe slavetrådene:
STOP SLAVE;
Kør følgende forespørgsel, der indstiller slaven til at replikere masteren:
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;
Sørg for, at du bruger den rigtige IP-adresse, brugernavn og adgangskode. Logfilfilens navn og placering skal være de samme som de værdier, du har fået fra hovedserveren.
Når det er gjort, skal du starte slavetrådene.
Test konfigurationen
På dette tidspunkt skal du have et fungerende Master / Slave-replikationsopsætning.
For at verificere, at alt fungerer som forventet, opretter vi en ny database på masterserveren:
mysql -uroot -p
CREATE DATABASE replicatest;
Login til slaven MySQL shell:
mysql -uroot -p
Kør følgende kommando for at liste alle databaser:
SHOW DATABASES;
Du vil bemærke, at den database, du oprettede på master-serveren, er replikeret på slaven:
+--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | replicatest | | sys | +--------------------+ 5 rows in set (0.00 sec)
Konklusion
I denne tutorial har vi vist, at du opretter en MySQL Master / Slave-replikation på CentOS 7.
Du er velkommen til at give en kommentar, hvis du har spørgsmål.
centos mysql mariadbSådan konfigureres og konfigureres indstillinger for router-firewall

Lær hvordan du konfigurerer router-firewall, adgang til hardware-router-siden, konfigurer router-firewallindstillinger. Find ud af hvilke porte der er nødvendige på computeren.
Sådan konfigureres mysql (mariadb) master

I denne guide viser vi dig, hvordan du konfigurerer MariaDB Master / Slave-replikation med en master og en slaveserver på Debian 10. MariaDB er standardimplementeringen af MySQL i Debian.
Sådan konfigureres mysql master

MySQL-replikation er en proces, der tillader, at data fra en databaseserver automatisk kopieres til en eller flere servere. Denne tutorial dækker et grundlæggende eksempel på MySQL Master / Slave-replikation med en master og en slaveserver på Ubuntu 18.04.