Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Krok 1 – Skontrolujte, či je povolené GTID
Pred spustením skontrolujte, či je povolené GTID. Odporúča sa používať GTID s replikáciou MariaDB.
```
mysql -u root -p
ZOBRAZIŤ GLOBÁLNE PREMENNÉ AKO 'gtid_mode';
```
Uistite sa, že výstup vyššie uvedeného dotazu je ON alebo ON_PERMISSIVE. Ak sa vypnete, spustite tento príkaz, aby ste povolili GTID:
```
SET GLOBAL gtid_mode=ON;
```
Poznámka:Ak bolo GTID pôvodne VYPNUTÉ, reštartujte službu MariaDB, aby sa táto zmena prejavila.
Krok 2 – Vytvorte nového používateľa na replikáciu
Vytvorte nového používateľa, ktorého môžu podradené servery použiť na pripojenie k hlavnému serveru a získanie aktualizácií. Tento používateľ by mal mať privilégium REPLICATION SLAVE.
```
mysql -u root -p
VYTVORIŤ POUŽÍVATEĽA 'repluser'@'%' IDENTIFIKOVANÉHO PODĽA 'silného hesla';
GRANT REPLICATION SLAVE ON *.* TO 'repluser'@'%';
SPLACHOVAŤ PRIVILEGIÁ;
```
Krok 3 – Nastavenie replikácie MySQL Master-Master
_a) Na Majstrovi 1:_
- Zastavte službu MariaDB:
```
sudo služba mariadb stop
```
- Vytvorte a otvorte súbor _my.cnf_ v textovom editore.
- Pre systémy založené na Debian/Ubuntu:
```
sudo nano /etc/mysql/my.cnf
```
- Pre systémy založené na RedHat/CentOS/Fedora:
```
sudo nano /etc/my.cnf
```
- Upravte súbor _my.cnf_ tak, aby obsahoval nasledujúcu konfiguráciu:
```
[mysqld]
server-id=1
gtid_mode =ON
adresa väzby =0.0.0.0
log-bin=/var/log/mysql/mariadb-bin
binlog_do_db=mydb # databáza, ktorú chcete replikovať
hlavný_hostiteľ =192.168.1.20
relay-log=/var/log/mysql/mariadb-relay-bin.log
relay-log-index=/var/log/mysql/mariadb-relay-bin.index
```
*Server_id vo vyššie uvedenej konfigurácii by mal byť jedinečným ID pre tento hlavný server.
*Binlog_do_db určuje, ktorá databáza sa má replikovať.
*Master_host určuje IP adresu alebo názov hostiteľa druhého hlavného servera, ak nastavujete duálnu hlavnú replikáciu.
- Uložte a ukončite konfiguračný súbor _my.cnf_.
- Spustite službu MariaDB:
```
sudo služba mariadb štart
```
_b) Na Majstrovi 2:_
- Opakujte rovnaké kroky ako pre master 1, okrem:
- Zadajte iný server_id (napr. server-id=2)
- Zadajte IP adresu alebo názov hostiteľa master 1 ako master_host.
Krok 4 – Nastavenie Slave
_a) Na Slave:_
- Zastavte službu MariaDB:
```
sudo služba mariadb stop
```
- Upravte súbor _my.cnf_:
```
sudo nano /etc/mysql/my.cnf
```
- Uistite sa, že adresa väzby je nastavená na 0.0.0.0, aby podriadená jednotka mohla akceptovať pripojenia z oboch masterov.
- Pridajte nasledujúce riadky:
```
[mysqld]
server-id=1
gtid_mode =ON
log_slave_updates=1
```
- Uložte a ukončite konfiguračný súbor _my.cnf_.
- Spustite službu MariaDB:
```
sudo služba mariadb štart
```
- Pripojte sa k podriadenej databáze:
```
mysql -u root -p
```
- Nakonfigurujte replikáciu na podriadenom zariadení:
```mysql
ZMENIŤ MAJSTRA NA
MASTER_HOST='master1_ip_address',
MASTER_USER='repluser',
MASTER_PASSWORD='silné heslo',
MASTER_AUTO_POSITION =1;
START SLAVE;
```
_b) Monitorovanie stavu replikácie:_
- Skontrolujte stav replikácie na hlavnom aj podriadenom zariadení:
```mysql
ZOBRAZIŤ STAV SLAVE\G;
```
Stav replikácie by mal ukazovať, že slave je pripojený a replikuje sa z masterov.