Giunsa ang Pag-setup sa MySQL Master-Slave Replication sa RHEL 8


Ang MySQL Replication usa ka proseso diin ang datos gikan sa usa ka server awtomatik nga gikopya o gikopya ngadto sa laing backup nga server sa tinuod nga panahon. Ang replikasyon naghatag ug redundancy ug fault tolerance ug naghatag sa user og kalinaw sa hunahuna nga bisan human sa kapakyasan sa master server, ang data mahimo gihapon nga mabawi.

Sa kini nga panudlo, mahibal-an nimo kung giunsa ang pag-configure ug pag-set up sa usa ka MySQL master-slave replication sa usa ka RHEL 8 Linux.

Sa setup, kita adunay duha ka mga server nga nagdagan sa RHEL 8 uban sa mosunod nga mga IP address.

Master = 173.82.120.14
Slave  = 173.82.115.165

Atong ipadayon karon ug tan-awon kung giunsa nato ma-configure ang MySQL Master-slave replication setup sa RHEL 8 Linux.

Lakang 1: I-install ang MySQL sa Master ug Slave Server

1. Ang pinakabag-o nga bersyon sa MySQL 8.x nalakip na sa default repository sa RHEL 8 ug mahimo nimo kini i-install gamit ang mosunod nga yum command.

# yum -y install @mysql

Lakang 2: I-secure ang MySQL sa Master ug Slave Server

Human sa pag-instalar, kinahanglan nimong sugdan na ang serbisyo sa MySQL nga bag-o lang nimo na-install ug himoon kini nga awtomatiko nga magsugod sa matag higayon nga magsugod ka sa server. Busa, gamita ang mosunod nga sugo.

# systemctl enable mysqld
# systemctl start mysqld

Sunod, kinahanglan nimo nga ma-secure ang imong pag-install sa MySQL pinaagi sa pagpadagan sa script sa seguridad nga adunay daghang mga operasyon nga nakabase sa seguridad sama sa pag-set sa root password, pagtangtang sa mga wala mailhi nga tiggamit, dili pagtugot sa pag-login sa gamut sa layo, pagtangtang sa database sa pagsulay ug pag-reload sa pribilehiyo.

# mysql_secure_installation

Ipadayon ang nahabilin nga pag-aghat ug tubaga ang Oo sa tanan nga mga pangutana aron i-set up ang server sa labing kaayo nga pamaagi sa seguridad.

Lakang 3: Pag-configure sa MySQL Master Server

Sa pagsugod sa Master server configuration, ipadayon ug ablihi ang MySQL configuration file pinaagi sa pag-type sa mosunod nga command.

$ sudo vim /etc/my.cnf

Sa mysqld nga seksyon, idugang ang mga linya sama sa gipakita sa ubos.

bind-address =173.82.120.14
server-id = 1
log_bin =mysql-bin

Sa katapusan, i-restart ang serbisyo sa MySQL.

$ sudo systemctl restart mysqld

Karon maghimo kami usa ka tiggamit sa pagkopya. Busa, pag-log in sa imong MySQL master server isip root user ug ihatag ang password.

$ sudo mysql -u root -p

Karon padagana ang mosunod nga mga sugo sa paghimo sa replica user samtang sa samang higayon naghatag sa ulipon og access sa user. Hinumdomi nga gamiton ang IP address sa imong mga makina.

mysql> CREATE USER 'replica'@'173.82.115.165' IDENTIFIED BY 'strong_password';
mysql> GRANT REPLICATION SLAVE ON *.*TO 'replica'@'173.82.115.165';

Karon, imong i-type ang mosunod nga sugo nga mag-imprinta sa binary filename ug posisyon.

mysql> SHOW MASTER STATUS\G

Hinumdomi nga timan-an ang resulta nga filename msql-bin.000002 ug ang posisyon niini 939.

Lakang 4: Pag-configure sa MySQL Slave Server

Sama sa proseso sa pag-set up sa master, kinahanglan nimo nga buhaton ang mosunud nga mga pagbag-o sa mysql slave configuration file.

$ sudo vim  /etc/my.cnf

Idugang ang mosunod nga mga linya sa configuration file ubos sa mysqld nga seksyon.

bind-address =173.82.115.165
server-id = 2
log_bin =mysql-bin

I-restart ang server.

$ sudo systemctl restart mysqld

Karon ang sunod nga lakang mao ang pag-configure sa slave server aron makopya gikan sa Master server. Log in sa MySQL server.

$ sudo mysql -u root -p

Una, ihunong ang mga hilo sa pagkopya.

mysql> STOP SLAVE;

Karon, pagdagan ang mosunud nga pangutana nga mag-configure sa ulipon aron makopya gikan sa Master server.

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;

Siguroha nga imong gigamit ang husto nga IP username ug password. Usab, gamita ang filename ug posisyon nga imong nakuha gikan sa master server.

Sa katapusan, i-type ang mosunud nga mando aron masugdan ang mga hilo sa ulipon.

mysql> START SLAVE;

Lakang 5: Pagsulay sa MySQL Master-Slave Replication

Niini nga punto, nahuman na nimo ang pag-configure sa mga master ug slave server. Kinahanglan namong susihon kung ang pag-configure nagtrabaho ug kung ang pagkopya mahimo’g mahitabo.

Aron mahimo kini, adto sa master server ug pag-log in sa MySQL database server.

$ sudo mysql -u root -p

Paghimo og sample database.

mysql> CREATE DATABASE replication_database;

Karon pangadto sa Slave server ug pag-usab, pag-log in sa MySQL database server.

$ sudo mysql -u root -p

Karon ilista ang tanan nga mga database gamit ang mosunod nga sugo.

mysql> SHOW DATABASES;

Kung makita nimo ang gibuhat nga database, nan ang MySQL Master-Slave Replication setup nagtrabaho.

Ang pagkopya usa ka yano nga proseso nga dali buhaton. Sa kini nga giya, nahibal-an nimo kung giunsa nimo paghimo ang usa ka pagkopya sa usa ka master sa MySQL aron maulipon sa usa ka RHEL 8 Linux.