Kif Twaqqaf MySQL Master-Slave Replication fuq RHEL 8
MySQL Replication huwa proċess fejn id-dejta minn server wieħed tiġi kkupjata jew replikata awtomatikament fuq server backup ieħor f'ħin reali. Ir-replikazzjoni tipprovdi redundancy u tolleranza għall-ħsarat u tagħti paċi tal-moħħ lill-utent li anke wara falliment fis-server prinċipali, id-data xorta tista 'tiġi rkuprata.
F'dan it-tutorja, int se titgħallem kif tikkonfigura u twaqqaf replikazzjoni master-slave MySQL fuq RHEL 8 Linux.
Fis-setup, se jkollna żewġ servers li jmexxu RHEL 8 bl-indirizzi IP li ġejjin.
Master = 173.82.120.14 Slave = 173.82.115.165
Ejja issa nipproċedu u naraw kif nistgħu nikkonfiguraw is-setup tar-replikazzjoni MySQL Master-slave fuq RHEL 8 Linux.
Pass 1: Installa MySQL fuq Master u Slave Server
1. L-aħħar verżjoni tal-MySQL 8.x hija diġà inkluża fir-repożitorju default ta 'RHEL 8 u tista' tinstallaha billi tuża l-kmand yum li ġej.
# yum -y install @mysql
Pass 2: Sikura MySQL fuq Master u Slave Server
Wara l-installazzjoni, issa għandek tibda s-servizz MySQL li għadek kif installajt u tagħmlu jibda awtomatikament kull darba li tibda s-server. Għalhekk, uża l-kmand li ġej.
# systemctl enable mysqld # systemctl start mysqld
Sussegwentement, għandek bżonn tiżgura l-installazzjoni MySQL tiegħek billi tħaddem l-iskript tas-sigurtà li jiġi ma 'diversi operazzjonijiet ibbażati fuq is-sigurtà bħall-issettjar tal-password tal-għeruq, it-tneħħija ta' utenti anonimi, ma tħallix il-login tal-għeruq mill-bogħod, neħħi d-database tat-test u l-privileġġ tal-ikkargar mill-ġdid.
# mysql_secure_installation
Ipproċedi bil-bqija tal-pront u wieġeb Iva
għall-mistoqsijiet kollha sabiex waqqaf is-server għall-aħjar prattiki tas-sigurtà.
Pass 3: Konfigurazzjoni tal-MySQL Master Server
Biex tibda bil-konfigurazzjoni tas-server Master, ipproċedi u tiftaħ il-fajl tal-konfigurazzjoni MySQL billi ttajpja l-kmand li ġej.
$ sudo vim /etc/my.cnf
Fit-taqsima mysqld
, waħħal il-linji kif muri hawn taħt.
bind-address =173.82.120.14 server-id = 1 log_bin =mysql-bin
Fl-aħħarnett, ibda mill-ġdid is-servizz MySQL.
$ sudo systemctl restart mysqld
Issa se noħolqu utent ta 'replikazzjoni. Għalhekk, idħol fis-server prinċipali MySQL tiegħek bħala l-utent għerq u agħti l-password.
$ sudo mysql -u root -p
Issa mexxi l-kmandi li ġejjin biex toħloq l-utent replika filwaqt li fl-istess ħin tagħti aċċess lill-iskjav lill-utent. Ftakar li tuża l-indirizz IP tal-magni tiegħek.
mysql> CREATE USER 'replica'@'173.82.115.165' IDENTIFIED BY 'strong_password'; mysql> GRANT REPLICATION SLAVE ON *.*TO 'replica'@'173.82.115.165';
Issa, inti ser ittajpja l-kmand li ġej li se tipprintja l-isem tal-fajl binarju u l-pożizzjoni.
mysql> SHOW MASTER STATUS\G
Ftakar li tieħu nota tal-isem tal-fajl li jirriżulta msql-bin.000002
u l-pożizzjoni tiegħu 939
.
Pass 4: Konfigurazzjoni tal-MySQL Slave Server
Eżatt bħall-proċess tat-twaqqif tal-kaptan, għandek tagħmel il-bidliet li ġejjin fil-fajl tal-konfigurazzjoni tal-iskjavi mysql.
$ sudo vim /etc/my.cnf
Ehmeż il-linji li ġejjin fil-fajl tal-konfigurazzjoni taħt it-taqsima mysqld
.
bind-address =173.82.115.165 server-id = 2 log_bin =mysql-bin
Ibda mill-ġdid is-server.
$ sudo systemctl restart mysqld
Issa l-pass li jmiss huwa li tikkonfigura s-server slave biex jirreplika mis-server Master. Idħol fis-server MySQL.
$ sudo mysql -u root -p
L-ewwel, waqqaf il-ħjut tar-replikazzjoni.
mysql> STOP SLAVE;
Issa, mexxi l-mistoqsija li ġejja li se tikkonfigura l-iskjav biex jirreplika mis-server Master.
mysql> CHANGE MASTER TO -> MASTER_HOST='173.82.120.14' , -> MASTER_USER='replica' , -> MASTER_PASSWORD='[email ' , -> MASTER_LOG_FILE='mysql-bin.000002' , -> MASTER_LOG_POS=939;
Kun żgur li qed tuża l-username u l-password tal-IP korretti. Ukoll, uża l-isem tal-fajl u l-pożizzjoni li ksibt mis-server prinċipali.
Fl-aħħarnett, ittajpja l-kmand li ġej biex tibda l-ħjut slave.
mysql> START SLAVE;
Pass 5: Ittestjar MySQL Master-Slave Replikazzjoni
F'dan il-punt, tkun lestejt il-konfigurazzjoni kemm tas-servers master kif ukoll slave. Issa rridu nivverifikaw jekk il-konfigurazzjoni tkunx qed taħdem u jekk ir-replikazzjoni tistax isseħħ.
Biex tagħmel dan, oħroġ lejn is-server prinċipali u idħol fis-server tad-database MySQL.
$ sudo mysql -u root -p
Oħloq database kampjun.
mysql> CREATE DATABASE replication_database;
Issa oħroġ lejn is-server Slave u għal darb'oħra, idħol fis-server tad-database MySQL.
$ sudo mysql -u root -p
Issa elenka d-databases kollha billi tuża l-kmand li ġej.
mysql> SHOW DATABASES;
Jekk tara d-database maħluqa, allura s-setup MySQL Master-Slave Replication taħdem.
Ir-replikazzjoni hija proċess pjuttost sempliċi li jista 'jsir faċilment. F'din il-gwida, tgħallimt kif tista 'toħloq replikazzjoni ta' kaptan MySQL għal skjav f'RHEL 8 Linux.