Yadda ake Saita Maimaita MySQL a RHEL, Rocky da AlmaLinux


Kwafiwar bayanai shine tsarin kwafin bayanan ku a cikin sabobin sabobin don inganta samuwar bayanai da haɓaka aminci da aikin aikace-aikacen. A cikin kwafin MySQL, ana kwafin bayanai daga bayanan bayanai daga uwar garken uwar garken zuwa wasu nodes a cikin ainihin lokacin don tabbatar da daidaiton bayanai da kuma samar da wariyar ajiya da sakewa.

A cikin wannan jagorar, mun nuna yadda zaku iya saita maimaita MySQL (Master-Slave) a cikin rabon tushen RHEL kamar CentOS, Fedora, Rocky Linux, da AlmaLinux.

Don haka, ga saitin lab ɗin kwafi na MySQL.

MySQL Master - 10.128.0.14
MySQL Slave - 10.128.15.211

Mu fara…

Mataki 1: Shigar MySQL akan Jagora da Sabar Bawa

Za mu fara ta hanyar shigar da bayanan MySQL akan duka uwar garken da bawa.

$ sudo dnf install @mysql

Da zarar an gama shigarwa, yi batu don fara uwar garken bayanai.

$ sudo systemctl start mysqld

Sa'an nan kunna shi don fara tsarin farawa ko a sake yi.

$ sudo systemctl enable mysqld

Bayan haka, tabbatar da cewa uwar garken bayanan MySQL yana gudana kamar yadda aka nuna:

$ sudo systemctl status mysqld

Mataki 2: Amintaccen MySQL akan Jagora da Sabar Bawa

Mataki na gaba shine kiyaye bayanan MySQL akan duka uwar garken da bawa. Wannan shi ne saboda saitunan tsoho ba su da tsaro kuma suna gabatar da wasu madogara waɗanda masu kutse za su iya amfani da su cikin sauƙi.

Don haka, don ƙarfafa MySQL, gudanar da umarni:

$ sudo mysql_secure_installation

Da farko, za a buƙaci ka saita kalmar sirri ta MySQL. Tabbatar samar da tushen kalmar sirri mai ƙarfi, zai fi dacewa tare da haruffa sama da 8 waɗanda ke hade da manyan baƙaƙe, ƙananan haruffa, na musamman da haruffan lambobi.

Don sauran tsokana, rubuta a cikin Y don daidaita sabar bayanan zuwa saitunan da aka ba da shawarar.

Da zarar kun gama shigarwa da hardening MySQL akan kullin maigidan da bawa, na gaba shine saita kullin master.

Mataki na 3: Sanya Jagora Node (Server)

Mataki na gaba shine a saita kumburin Jagora da baiwa kullin bawa damar shiga. Da farko, muna buƙatar gyara fayil ɗin sanyi na mysql-server.cnf.

$ sudo vim /etc/my.cnf.d/mysql-server.cnf

Ƙara layin masu zuwa ƙarƙashin sashin [mysqld].

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

Da zarar an yi, ajiye canje-canje kuma fita. Sa'an nan kuma sake kunna uwar garken MySQL.

$ sudo sysemctl restart mysqld

Na gaba, shiga cikin MySQL harsashi.

$ sudo mysql -u root -p

Yi waɗannan umarni don ƙirƙirar mai amfani da bayanai wanda za a yi amfani da shi don ɗaure maigida da bawa don maimaitawa.

mysql> CREATE USER 'replica'@'10.128.15.211' IDENTIFIED BY '[email ';
mysql> GRANT REPLICATION SLAVE ON *.*TO 'replica'@'10.128.15.211';

Aiwatar da canje-canje kuma fita daga uwar garken MySQL.

mysql> FLUSH PRIVILEGES;
mysql> EXIT;

Tabbatar da matsayin maigidan.

mysql> SHOW MASTER STATUS\G

Kula da Sunan Fayil da Matsayi. Kuna buƙatar wannan daga baya lokacin saita bawan don maimaitawa. A cikin yanayinmu, muna da sunan fayil kamar mysql-bin.000001 da Matsayi 1232.

Mataki na 4: Sanya Node na Bawan (Server)

Yanzu, komawa zuwa kullin Slave. Har yanzu, gyara fayil ɗin sanyi na mysql-server.cnf.

$ sudo vim /etc/my.cnf.d/mysql-server.cnf

Kamar yadda yake a da, liƙa waɗannan layukan ƙarƙashin sashin [mysqld]. Canza adireshin IP don dacewa da IP ɗin bawa. Hakanan, sanya ID na uwar garken daban. Anan mun sanya shi darajar 2.

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

Ajiye canje-canje kuma fita fayil. Sa'an nan kuma sake kunna uwar garken bayanai.

$ sudo systemctl restart mysqld

Don saita kullin Slave don yin kwafi daga kullin Jagora, shiga cikin uwar garken MySQL na Slave.

$ sudo mysql -u root -p

Da farko dai, dakatar da zaren maimaitawa:

mysql> STOP SLAVE;

Sannan aiwatar da umarni mai zuwa don saita kumburin bawa don yin kwafin bayanai daga maigidan.

mysql> CHANGE MASTER TO
     MASTER_HOST='10.128.0.14' ,
     MASTER_USER='replica' ,
     MASTER_PASSWORD='[email ' ,
     MASTER_LOG_FILE='mysql-bin.000001' ,
     MASTER_LOG_POS=1232;

Lura cewa tutocin MASTER_LOG_FILE da MASTER_LOG_POS sun yi daidai da fayil ɗin da ƙimar Matsayi daga Kuɗin Jagora a ƙarshen Mataki na 1.

MASTER_HOST, MASTER_USER, da MASTER_PASSWORD sun dace da Babban adireshin IP, mai amfani da kwafi, da kuma kalmar sirrin mai kwafi bi da bi.

Sannan fara zaren kwafin bayi:

mysql> START SLAVE;

Mataki na 4: Gwaji Maimaita Jagora-Bawan MySQL

Yanzu, don gwada idan maimaitawa tsakanin maigidan da kullin bawa yana aiki, shiga cikin uwar garken bayanan MySQL akan kullin maigidan:

$ sudo mysql -u root -p

Ƙirƙiri bayanan gwaji. Anan, bayanan gwajin mu ana kiransa replication_db.

mysql> CREATE DATABASE replication_db;
Verify the existence of the database.
mysql> SHOW DATABASES;

Yanzu, kan gaba zuwa kullin bawa, shiga cikin uwar garken MySQL kuma tabbatar da cewa bayanan replication_db yana nan. Daga abubuwan da aka fitar a ƙasa, za mu iya ganin cewa rumbun adana bayanai yana nan. Wannan tabbaci ne cewa maimaitawa ya faru daga Jagora zuwa kullin bawa.

mysql> SHOW DATABASES;

Kuma shi ke nan, mun sami nasarar nuna yadda zaku iya saita samfurin kwafi na master-bawa na MySQL wanda zai iya kwafi bayanan bayanai daga kullin maigida zuwa kullin bawa.