MySQL Tutorial for Beginners [2019] - Full Course
Tartalomjegyzék:
- Előfeltételek
- Telepítse a MySQL-t
- Konfigurálja a főkiszolgálót
- Konfigurálja a slave szervert
- Tesztelje a konfigurációt
- Következtetés
A MySQL replikáció egy olyan folyamat, amely lehetővé teszi az adatok automatikus átmásolását egy adatbázis-kiszolgálóról egy vagy több kiszolgálóra.
A MySQL számos replikációs topológiát támogat, és a Master / Slave topológia az egyik legismertebb topológia, amelyben az egyik adatbázis-kiszolgáló masterként működik, míg egy vagy több kiszolgáló slave-ként működik. Alapértelmezés szerint a replikáció aszinkron, ahol a mester az adatbázis módosításait leíró eseményeket küld a bináris naplójába, és a szolgak az események készenléti állapotát kérik.
Ebben az oktatóanyagban elmagyarázza, hogyan állíthat be MySQL Master / Slave replikációt egy master és egy slave kiszolgálón a CentOS 7 rendszeren. Ugyanezek a lépések vonatkoznak a MariaDB-re.
Az ilyen típusú replikációs topológia leginkább az olvasott replikák telepítésére szolgál az olvasási méretarányhoz, az élő adatbázisok biztonsági mentéséből a katasztrófa utáni helyreállításhoz és az elemzési feladatokhoz.
Előfeltételek
Ebben a példában feltételezzük, hogy két CentOS 7 operációs rendszert futtató kiszolgálója van, amelyek privát hálózaton keresztül képesek kommunikálni egymással. Ha a tárhely szolgáltatója nem biztosít saját IP-címeket, akkor használhatja a nyilvános IP-címeket és konfigurálhatja a tűzfalat, hogy csak a megbízható forrásokból engedélyezze a 3306-os port forgalmát.
A példában szereplő kiszolgálók a következő IP-kkel rendelkeznek:
Master IP: 192.168.121.59 Slave IP: 192.168.121.14
Telepítse a MySQL-t
Az alapértelmezett CentOS 7 adattárak nem tartalmaznak MySQL csomagokat, így a MySQL-t a hivatalos Yum-tárolóból telepítjük. A problémák elkerülése érdekében ugyanazt a MySQL 5.7-es verziót telepítjük mindkét szerverre.
Telepítse a MySQL-t a Master és a Slave szerverekre is:
sudo yum localinstall
sudo yum install mysql-community-server
Miután a telepítés befejeződött, indítsa el a MySQL szolgáltatást, és engedélyezze, hogy automatikusan induljon a rendszerindításkor:
sudo systemctl enable mysqld
sudo systemctl start mysqld
A MySQL szerver első indításakor ideiglenes jelszó jön létre a MySQL root felhasználó számára. A jelszó megkereséséhez használja a következő grep parancsot:
sudo grep 'temporary password' /var/log/mysqld.log
Futtassa a
mysql_secure_installation
parancsot az új root jelszó beállításához és a MySQL példány biztonságának javításához:
mysql_secure_installation
Írja be az ideiglenes root jelszót, és válaszoljon
Y
(igen) minden kérdésre.
Konfigurálja a főkiszolgálót
Először konfiguráljuk a fő MySQL szervert, és a következő változtatásokat hajtjuk végre:
- Állítsa be a MySQL szervert a magán IP-címen történő hallgatáshoz. Állítsa be az egyedi kiszolgáló azonosítóját. Engedélyezze a bináris naplózást.
Ehhez nyissa meg a MySQL konfigurációs fájlt, és adja hozzá a következő sorokat a
szakasz:
sudo nano /etc/my.cnf
mester: /etc/my.cnf
bind-address = 192.168.121.59 server-id = 1 log_bin = mysql-bin
Miután kész, indítsa újra a MySQL szolgáltatást, hogy a változások érvénybe lépjenek
sudo systemctl restart mysqld
A következő lépés egy új replikációs felhasználó létrehozása. Jelentkezzen be a MySQL szerverre root felhasználóként:
mysql -uroot -p
A MySQL parancssorból futtassa a következő SQL lekérdezéseket, amelyek létrehozják a
replica
felhasználót és megadják a
REPLICATION SLAVE
jogosultságot a felhasználónak:
CREATE USER 'replica'@'192.168.121.14' IDENTIFIED BY 'strong_password';
GRANT REPLICATION SLAVE ON *.* TO 'replica'@'192.168.121.14';
Feltétlenül módosítsa az IP-t a szolga IP-címmel. Megnevezheti a felhasználót a kívánt módon.
Míg a MySQL parancssorban van, hajtsa végre a következő parancsot, amely kinyomtatja a bináris fájlnevet és a helyet.
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)
Vegye figyelembe a fájlnevet, a „mysql-bin.000001” és az „1427” pozíciót. Ezekre az értékekre lesz szükség a slave kiszolgáló konfigurálásakor. Ezek az értékek valószínűleg különböznek a szerveren.
Konfigurálja a slave szervert
A fenti master kiszolgálóhoz hasonlóan a következő változtatásokat hajtjuk végre a slave kiszolgálón:
- Állítsa be a MySQL-kiszolgálót úgy, hogy hallgassa meg a magán IPSet-ben egy egyedi kiszolgáló-azonosítót
Nyissa meg a MySQL konfigurációs fájlt, és szerkessze a következő sorokat:
sudo nano /etc/my.cnf
slave: /etc/my.cnf
bind-address = 192.168.121.14 server-id = 2 log_bin = mysql-bin
Indítsa újra a MySQL szolgáltatást:
sudo systemctl restart mysqld
A következő lépés a paraméterek konfigurálása, amelyeket a szolgakiszolgáló fog használni a főkiszolgálóhoz történő csatlakozáshoz. Bejelentkezés a MySQL shellbe:
mysql -uroot -p
Először állítsa le a szolga szálakat:
STOP SLAVE;
Futtassa a következő lekérdezést, amely beállítja a rabszolgot a mester replikálására:
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;
Győződjön meg arról, hogy a helyes IP-címet, felhasználónevet és jelszót használja. A naplófájl nevének és helyzetének meg kell egyeznie azokkal az értékekkel, amelyeket a főkiszolgálótól kapott.
Ha kész, indítsa el a slave szálakat.
Tesztelje a konfigurációt
Ezen a ponton rendelkeznie kell működő Master / Slave replikációs beállítással.
Annak ellenőrzése érdekében, hogy minden a várt módon működik-e, létrehozunk egy új adatbázist a főkiszolgálón:
mysql -uroot -p
CREATE DATABASE replicatest;
Bejelentkezés a slave MySQL shellbe:
mysql -uroot -p
Futtassa a következő parancsot az összes adatbázis felsorolásához:
SHOW DATABASES;
Észre fogja venni, hogy a főkiszolgálón létrehozott adatbázist a szolga replikálja:
+--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | replicatest | | sys | +--------------------+ 5 rows in set (0.00 sec)
Következtetés
Ebben az oktatóanyagban megmutattuk, hogy létrehozott egy MySQL Master / Slave replikációt a CentOS 7-en.
Ha bármilyen kérdése van, nyugodtan írjon megjegyzést.
centos mysql mariadbAz Európai Unió trösztellenes szabályozója teljesen aggodalmát fejezi ki amiatt, hogy az Oracle átvette a MySQL-t, a Widenius szerint februárban elhagyta a Sunot. A MySQL-nek más otthonra van szüksége, mint az Oracle, ahol nincs olyan összeférhetetlenség, hogy hogyan, vagy ha a MySQL-t tovább kell fejleszteni, írta Widenius. A cég, a Monty Program AB fejlesztette ki a MySDB-nek a MariaDB-t.
A legfontosabb cél az, hogy otthont találjon az Oracle-nek a MySQL-n kívül, ahol az adatbázis fejleszthető és versenyezhet a meglévő termékekkel, beleértve az Oracle-t Florian Mueller , egy korábbi MySQL részvényes, aki jelenleg a Monty Program AB-val dolgozik ebben a kérdésben.
Hogyan állítsuk be a mysql (mariadb) mestert
Ebben az útmutatóban bemutatjuk, hogyan állíthatja be a MariaDB Master / Slave replikációt egy master és egy slave kiszolgálón a Debian 10 rendszeren. A MariaDB a MySQL alapértelmezett implementációja Debianon.
Hogyan állítsuk be a mysql mestert
A MySQL replikáció egy olyan folyamat, amely lehetővé teszi egy adatbázis-kiszolgáló adatainak automatikus másolását egy vagy több kiszolgálóra. Ez az oktatóanyag egy alapvető példát mutat a MySQL Master / Slave replikációra egy master és egy slave kiszolgálón az Ubuntu 18.04-en.







