Az Azure Database for MySQL konfigurálása – Rugalmas kiszolgálói adat-kimenő replikáció
A következőkre vonatkozik: Azure Database for MySQL – rugalmas kiszolgáló
Ez a cikk bemutatja, hogyan állíthat be adat-kimenő replikációt a rugalmas Azure Database for MySQL-kiszolgálón a forrás- és replikakiszolgálók konfigurálásával. Ez a cikk feltételezi, hogy rendelkezik korábbi tapasztalatokkal a MySQL-kiszolgálók és -adatbázisok terén.
A kimenő adatok replikálása esetén a forrás mindig rugalmas Azure Database for MySQL-kiszolgáló. A replika lehet bármely külső MySQL-kiszolgáló más felhőszolgáltatókon, helyszíni vagy virtuális gépeken. A cikk lépéseinek végrehajtása előtt tekintse át az adat-kimenő replikáció korlátait és követelményeit.
Feljegyzés
Ez a cikk a Microsoft által már nem használt rabszolga kifejezésre hivatkozik. Ha a kifejezés el lesz távolítva a szoftverből, eltávolítjuk ebből a cikkből.
Hozzon létre egy rugalmas Azure Database for MySQL-kiszolgálópéldányt forrásként.
Hozzon létre egy új, rugalmas Azure Database for MySQL-kiszolgálópéldányt (például sourceserver.mysql.database.Azure.com). Tekintse meg a rugalmas Azure Database for MySQL-kiszolgálópéldány létrehozását az Azure Portal használatával a kiszolgáló létrehozásához. Ez a kiszolgáló a "forrás" kiszolgáló az adat-kimenő replikációhoz.
Duplikált felhasználói fiókok és megfelelő jogosultságok létrehozása.
- A felhasználói fiókok nem replikálódnak a forráskiszolgálóról a replikakiszolgálóra. Tegyük fel, hogy hozzáférést kíván biztosítani a felhasználóknak a replikakiszolgálóhoz. Ebben az esetben manuálisan kell létrehoznia az összes fiókot és megfelelő jogosultságot ezen az újonnan létrehozott rugalmas Azure Database for MySQL-kiszolgálópéldányon.
A forrás MySQL-kiszolgáló konfigurálása
Az alábbi lépések előkészítik és konfigurálják a rugalmas Azure Database for MySQL-kiszolgálópéldányt, amely forrásként működik.
Hálózatkezelési követelmények
Győződjön meg arról, hogy a hálózati beállítások létre lettek hozva, hogy a forrás- és replikakiszolgáló zökkenőmentesen kommunikálhasson.
Ha a forráskiszolgáló nyilvános hozzáféréssel rendelkezik, győződjön meg arról, hogy a tűzfalszabályok engedélyezik a replikakiszolgáló IP-címét. Ha a replikakiszolgáló az Azure-ban van üzemeltetve, győződjön meg arról, hogy az Azure Portal hálózati oldaláról engedélyezi a nyilvános hozzáférést bármely Azure-szolgáltatásból. Ha a forráskiszolgáló privát hozzáféréssel rendelkezik, győződjön meg arról, hogy a replikakiszolgáló virtuális hálózatok közötti társviszony-létesítésen vagy virtuális hálózatok közötti VPN-átjárókapcsolaton keresztül tud csatlakozni a forráshoz.Feljegyzés
További információ – Hálózatkezelés áttekintése – Rugalmas Azure Database for MySQL-kiszolgáló.
Bináris naplózás bekapcsolása
Ellenőrizze, hogy engedélyezve van-e a bináris naplózás a forráson az alábbi parancs futtatásával:
SHOW VARIABLES LIKE 'log_bin';
Ha a log_bin változó "ON" értékkel lesz visszaadva, a bináris naplózás engedélyezve van a kiszolgálón.
Új replikációs szerepkör létrehozása és engedély beállítása
Hozzon létre egy felhasználói fiókot a konfigurált forráskiszolgálón replikációs jogosultságokkal. Ezt SQL-parancsokkal vagy egy olyan eszközzel teheti meg, mint a MySQL Workbench. Fontolja meg, hogy SSL-sel szeretne-e replikálni, mivel ezt meg kell adni a felhasználó létrehozásakor. Tekintse meg a MySQL dokumentációját, amelyből megtudhatja, hogyan adhat hozzá felhasználói fiókokat a forráskiszolgálóhoz.
Az alábbi parancsokban az új replikációs szerepkör bármely gépről elérheti a forrást, nem csak azt, amelyik a forrást üzemelteti. Ehhez adja meg a "syncuser@'%" értéket a felhasználói létrehozási parancsban. A fióknevek beállításával kapcsolatos további információkért tekintse meg a MySQL dokumentációját.
A fióknevek beállításához néhány eszköz használható. Válassza ki a környezetének leginkább megfelelőt.
Replikáció SSL-lel
Ha minden felhasználói kapcsolathoz SSL-t szeretne igényelni, hozzon létre egy felhasználót az alábbi paranccsal:
CREATE USER 'syncuser'@'%' IDENTIFIED BY 'yourpassword';
GRANT REPLICATION SLAVE ON *.* TO ' syncuser'@'%' REQUIRE SSL;
Replikáció SSL nélkül
Ha az SSL nem minden kapcsolathoz szükséges, a következő paranccsal hozzon létre egy felhasználót:
CREATE USER 'syncuser'@'%' IDENTIFIED BY 'yourpassword';
GRANT REPLICATION SLAVE ON *.* TO ' syncuser'@'%';
A forráskiszolgáló memóriaképe és visszaállítása.
Hagyja ki ezt a szakaszt, ha egy újonnan létrehozott forráskiszolgáló, amely nem rendelkezik meglévő adatokkal a replikára való migráláshoz. Ezen a ponton feloldhatja a táblák zárolását:
SET GLOBAL read_only = OFF;
UNLOCK TABLES;
Kövesse az alábbi lépéseket, ha a forráskiszolgáló rendelkezik meglévő adatokkal a replikára való migráláshoz.
Határozza meg, hogy mely adatbázisokat és táblákat szeretné replikálni a rugalmas Azure Database for MySQL-kiszolgálóra, és hajtsa végre a memóriaképet a forráskiszolgálóról. A mysqldump használatával adatbázisokat hozhat ki az elsődleges kiszolgálóról. További részletekért látogasson el a Dump & Restore webhelyre. Szükségtelen a MySQL-kódtár és a teszttár kiírása.
Állítsa be a forráskiszolgálót olvasási/írási módra.
Az adatbázis memóriaképe után módosítsa a rugalmas Azure Database for MySQL-kiszolgálópéldányt olvasási/írási módra.
SET GLOBAL read_only = OFF;
UNLOCK TABLES;
- Állítsa vissza a memóriaképfájlt az új kiszolgálóra. Állítsa vissza a memóriaképfájlt a rugalmas Azure Database for MySQL-kiszolgálón létrehozott kiszolgálóra. A memóriaképfájl rugalmas Azure Database for MySQL-kiszolgálópéldányra való visszaállításához tekintse meg a Dump &Visszaállítás című témakört. Ha a memóriaképfájl nagy, töltse fel egy azure-beli virtuális gépre a replikakiszolgálóval azonos régióban. Állítsa vissza a rugalmas Azure Database for MySQL-kiszolgálópéldányra a virtuális gépről.
Feljegyzés
Ha el szeretné kerülni, hogy az adatbázis írásvédett legyen a memóriakép és a visszaállítás során, használhatja a mydumper/myloadert.
Konfigurálja a replikakiszolgálót a kimenő adatreplikálás elindításához.
Szűrés
Tegyük fel, hogy az adatkiosztási replikáció a rugalmas Azure Database for MySQL-kiszolgáló és egy külső MySQL között van beállítva más felhőszolgáltatókon vagy a helyszínen. Ebben az esetben a replikációs szűrővel szűrheti ki az Azure-beli egyéni táblákat a replikakiszolgálón. Ez a Replicate_Wild_Ignore_Table = "mysql.__%" beállítással érhető el a rugalmas Azure Database for MySQL-kiszolgáló belső tábláinak szűréséhez. A kiszolgálóparaméter módosításával kapcsolatos további részletekért tekintse meg a MySQL :: MySQL 5.7 referencia-kézikönyvét:: 13.4.2.2 A REPLIKÁCIÓS SZŰRŐ utasítás módosítása.
Állítsa be a replikakiszolgálót úgy, hogy csatlakozik hozzá, és megnyitja a MySQL-rendszerhéjat a replikakiszolgálón. A parancssorból futtassa a következő műveletet, amely egyszerre több MySQL-replikációs beállítást konfigurál:
CHANGE THE REPLICATION SOURCE TO SOURCE_HOST='<master_host>', SOURCE_USER='<master_user>', SOURCE_PASSWORD='<master_password>', SOURCE_LOG_FILE='<master_log_file>', SOURCE_LOG_POS=<master_log_pos>
- master_host: a forráskiszolgáló állomásneve (például : "source.mysql.database.Azure.com")
- master_user: a forráskiszolgáló felhasználóneve (például : 'syncuser'@'%')
- master_password: a forráskiszolgáló jelszava
- master_log_file: bináris naplófájl neve a megjelenítési főállapot futtatásából
- master_log_pos: bináris naplópozíció a megjelenítési főállapot futtatásából
Feljegyzés
Ha SSL-t szeretne használni a kapcsolathoz, adja hozzá az SOURCE_SSL=1 attribútumot a parancshoz. Az SSL replikációs környezetben való használatával kapcsolatos további információkért látogasson el a következőre: https://dev.mysql.com/doc/refman/8.0/en/change-replication-source-to.html
A replikakiszolgáló aktiválása a következő paranccsal.
START REPLICA;
Ekkor a replikapéldány megkezdi a forráskiszolgáló-adatbázison végrehajtott módosítások replikálását. Ezt úgy tesztelheti, hogy létrehoz egy mintatáblát a forrásadatbázison, és ellenőrzi, hogy a rendszer sikeresen replikálja-e.
Ellenőrizze a replikáció állapotát.
A replikáció állapotának megtekintéséhez hívja meg a replikálás állapotát a replikakiszolgálón található show slave status\G paranccsal.
show slave status;
Ha a Slave_IO_Running és a Slave_SQL_Running állapota,
yes
és az Seconds_Behind_Master értéke,0
a replikáció jól működik. Seconds_Behind_Master jelzi, hogy a replika mennyi késésben van. A replika akkor dolgozza fel a frissítéseket, ha az érték nem0
.Ha a replikakiszolgálót egy Azure-beli virtuális gépen üzemelteti, állítsa be az Azure-szolgáltatásokhoz való hozzáférés engedélyezése on értékre a forráson, hogy a forrás- és replikakiszolgálók kommunikálhassanak. Ez a beállítás módosítható a kapcsolat biztonsági beállításaitól. További információ: Tűzfalszabályok kezelése a portálon.
Ha a mydumper/myloader használatával tette le az adatbázist, lekérheti a master_log_file és master_log_pos a /backup/metadata fájlból.
Következő lépés
- További információ a kimenő adatreplikálásról
- További információ a data-in replikációról
- A data-in replikáció konfigurálása
- További információ az Azure-beli replikálásról olvasási replikákkal