Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky

Domáce Hardware Siete Programovanie Softvér Otázka Systémy

Ako nakonfigurovať replikáciu MariaDB Master-Master/Slave

Ak chcete nakonfigurovať replikáciu MariaDB Master-master/slave, postupujte takto:

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

Zadajte rootovské heslo MariaDB

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]

ID serverov

server-id=1

Ak ešte nie je povolený, povoľte režim GTID

gtid_mode =ON

Väzba na všetky sieťové rozhrania

adresa väzby =0.0.0.0

Konfigurácia replikácie

log-bin=/var/log/mysql/mariadb-bin

binlog_do_db=mydb # databáza, ktorú chcete replikovať

Master1 dostane aktualizácie od master2. Odstráňte riadok nižšie, ak je to prvý master, ktorý konfigurujete.

hlavný_hostiteľ =192.168.1.20

Voliteľne, ak je to potrebné (užitočné, ak sa pokúšate obnoviť slave z havárie):

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]

Nastavte ID servera na rovnaké ako Master1.

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.

Najnovšie články

Copyright © počítačové znalosti Všetky práva vyhradené