ວິທີການຕັ້ງຄ່າ Replication MySQL Master-Slave ໃນ RHEL 8


ການ ຈຳ ລອງ MySQL ແມ່ນຂະບວນການ ໜຶ່ງ ທີ່ຂໍ້ມູນຈາກເຊີບເວີ ໜຶ່ງ ໄດ້ຖືກຄັດລອກຫຼືອັດແບບອັດຕະໂນມັດໃສ່ເຄື່ອງແມ່ຂ່າຍ ສຳ ຮອງອື່ນໃນເວລາຈິງ. ການເຮັດຊ້ ຳ ແບບສະ ໜອງ ຄວາມຊ້ ຳ ຊ້ອນແລະຄວາມທົນທານຕໍ່ຄວາມຜິດແລະເຮັດໃຫ້ຄວາມສະຫງົບຂອງຜູ້ໃຊ້ວ່າເຖິງແມ່ນວ່າຫລັງຈາກຄວາມລົ້ມເຫລວໃນ server server, ຂໍ້ມູນຍັງສາມາດຊອກຫາໄດ້.

ໃນບົດແນະ ນຳ ນີ້, ທ່ານ ກຳ ລັງຈະຮຽນຮູ້ວິທີການຕັ້ງຄ່າແລະການຕັ້ງຄ່າການເຮັດຊ້ ຳ ແບບ MySQL ໃນ Linux RHEL 8.

ໃນການຕັ້ງຄ່າ, ພວກເຮົາຈະມີສອງ server ທີ່ໃຊ້ RHEL 8 ພ້ອມກັບທີ່ຢູ່ IP ຕໍ່ໄປນີ້.

Master = 173.82.120.14
Slave  = 173.82.115.165

ຕອນນີ້ໃຫ້ ດຳ ເນີນການແລະເບິ່ງວິທີທີ່ພວກເຮົາສາມາດ ກຳ ນົດການຕັ້ງຄ່າການ ຈຳ ລອງແບບ MySQL Master-ລອງໃນ RHEL 8 Linux.

ຂັ້ນຕອນທີ 1: ຕິດຕັ້ງ MySQL ໃນ Master ແລະ Slave Server

1. ເວີຊັນລ້າສຸດຂອງ MySQL 8.x ແມ່ນລວມຢູ່ໃນບ່ອນເກັບຂໍ້ມູນໃນຕອນຕົ້ນຂອງ RHEL 8 ແລະທ່ານສາມາດຕິດຕັ້ງມັນໂດຍໃຊ້ ຄຳ ສັ່ງ yum ຕໍ່ໄປນີ້.

# yum -y install @mysql

ຂັ້ນຕອນທີ 2: ຮັບປະກັນ MySQL ໃນ Master ແລະ Slave Server

ຫຼັງຈາກການຕິດຕັ້ງ, ຕອນນີ້ທ່ານຄວນເລີ່ມຕົ້ນໃຫ້ບໍລິການ MySQL ທີ່ທ່ານຫາກໍ່ຕິດຕັ້ງແລະເຮັດໃຫ້ມັນເລີ່ມຕົ້ນໂດຍອັດຕະໂນມັດໃນແຕ່ລະຄັ້ງທີ່ທ່ານເລີ່ມຕົ້ນ server. ສະນັ້ນ, ໃຊ້ ຄຳ ສັ່ງຕໍ່ໄປນີ້.

# systemctl enable mysqld
# systemctl start mysqld

ຕໍ່ໄປ, ທ່ານ ຈຳ ເປັນຕ້ອງຮັບປະກັນການຕິດຕັ້ງ MySQL ຂອງທ່ານໂດຍການຂຽນ script ທີ່ມີຄວາມປອດໄພມາພ້ອມກັບການ ດຳ ເນີນງານທີ່ມີຄວາມປອດໄພຫຼາຍຢ່າງເຊັ່ນ: ຕັ້ງຄ່າລະຫັດຜ່ານຮາກ, ກຳ ຈັດຜູ້ໃຊ້ທີ່ບໍ່ລະບຸຊື່, ບໍ່ເຂົ້າລະບົບການເຂົ້າສູ່ລະບົບຮາກຫ່າງໄກສອກຫຼີກ, ເອົາຖານຂໍ້ມູນທົດສອບແລະສິດທິພິເສດຄືນ ໃໝ່.

# mysql_secure_installation

ດໍາເນີນການກັບສ່ວນທີ່ເຫຼືອແລະຕອບ ແມ່ນແລ້ວ ຕໍ່ທຸກ ຄຳ ຖາມດັ່ງນັ້ນຈຶ່ງຕັ້ງເຄື່ອງແມ່ຂ່າຍໃຫ້ປະຕິບັດຄວາມປອດໄພທີ່ດີທີ່ສຸດ.

ຂັ້ນຕອນທີ 3: ການຕັ້ງຄ່າ MySQL Master Server

ເພື່ອເລີ່ມຕົ້ນການຕັ້ງຄ່າກັບການຕັ້ງຄ່າຂອງ server server, ດຳ ເນີນການແລະເປີດເອກະສານການຕັ້ງຄ່າ MySQL ໂດຍການພິມ ຄຳ ສັ່ງຕໍ່ໄປນີ້.

$ sudo vim /etc/my.cnf

ຢູ່ໃນພາກ mysqld , ໃຫ້ຕື່ມເສັ້ນທີ່ຢູ່ຂ້າງລຸ່ມ.

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

ສຸດທ້າຍ, ໃຫ້ບໍລິການ MySQL ຄືນ ໃໝ່.

$ sudo systemctl restart mysqld

ດຽວນີ້ພວກເຮົາ ກຳ ລັງຈະສ້າງຜູ້ໃຊ້ແບບ ຈຳ ລອງ. ເພາະສະນັ້ນ, ເຂົ້າສູ່ລະບົບ server MySQL ຂອງທ່ານເປັນຜູ້ ນຳ ໃຊ້ຮາກແລະໃຫ້ລະຫັດລັບ.

$ sudo mysql -u root -p

ຕອນນີ້ດໍາເນີນການຄໍາສັ່ງຕໍ່ໄປນີ້ເພື່ອສ້າງຜູ້ໃຊ້ແບບຈໍາລອງໃນຂະນະດຽວກັນການອະນຸຍາດໃຫ້ໃຊ້ສໍາລອງກັບຜູ້ໃຊ້. ຢ່າລືມທີ່ຈະໃຊ້ທີ່ຢູ່ IP ຂອງເຄື່ອງຂອງທ່ານ.

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

ດຽວນີ້, ທ່ານ ກຳ ລັງຈະພິມ ຄຳ ສັ່ງຕໍ່ໄປນີ້ເຊິ່ງຈະພິມຊື່ຖານຂໍ້ມູນແລະ ຕຳ ແໜ່ງ ຖານສອງ.

mysql> SHOW MASTER STATUS\G

ຢ່າລືມທີ່ຈະບັນທຶກຊື່ filename ທີ່ໄດ້ຮັບຜົນ msql-bin.000002 ແລະ ຕຳ ແໜ່ງ ຂອງມັນ 939 .

ຂັ້ນຕອນທີ 4: ການຕັ້ງຄ່າ MySQL Slave Server

ຄືກັນກັບຂັ້ນຕອນຂອງການຕັ້ງຕົ້ນແມ່ບົດ, ທ່ານຄວນເຮັດການປ່ຽນແປງຕໍ່ໄປນີ້ກັບເອກະສານການຕັ້ງຄ່າລອງໃຊ້ mysql.

$ sudo vim  /etc/my.cnf

ຕື່ມໃສ່ແຖວຕໍ່ໄປນີ້ໃນເອກະສານການຕັ້ງຄ່າພາຍໃຕ້ສ່ວນ mysqld .

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

ເລີ່ມຕົ້ນເຊີບເວີ ໃໝ່.

$ sudo systemctl restart mysqld

ຕອນນີ້ຂັ້ນຕອນຕໍ່ໄປແມ່ນການ ກຳ ຫນົດຄ່າ server server ເພື່ອ ຈຳ ລອງຈາກ server server. ເຂົ້າສູ່ລະບົບ MySQL server.

$ sudo mysql -u root -p

ຫນ້າທໍາອິດ, ຢຸດກະທູ້ການເຮັດແບບຈໍາລອງ.

mysql> STOP SLAVE;

ໃນປັດຈຸບັນ, ດໍາເນີນການສອບຖາມຕໍ່ໄປນີ້ເຊິ່ງຈະກໍາຫນົດຄ່າລອງເພື່ອເຮັດການລອກແບບຈາກ 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;

ໃຫ້ແນ່ໃຈວ່າທ່ານ ກຳ ລັງໃຊ້ຊື່ຜູ້ໃຊ້ IP ແລະລະຫັດຜ່ານທີ່ຖືກຕ້ອງ. ນອກຈາກນີ້, ໃຊ້ຊື່ filename ແລະ ຕຳ ແໜ່ງ ທີ່ທ່ານໄດ້ຮັບຈາກ server server.

ສຸດທ້າຍ, ພິມ ຄຳ ສັ່ງຕໍ່ໄປນີ້ເພື່ອເລີ່ມຕົ້ນກະທູ້ຂອງທາດ.

mysql> START SLAVE;

ຂັ້ນຕອນທີ 5: ທົດສອບການ ຈຳ ລອງແບບ MySQL Master-Slave

ໃນຈຸດນີ້, ທ່ານໄດ້ເຮັດ ສຳ ເລັດການຕັ້ງຄ່າຂອງທັງ server ແລະ server. ດຽວນີ້ພວກເຮົາ ຈຳ ເປັນຕ້ອງກວດສອບວ່າການຕັ້ງຄ່າ ກຳ ລັງເຮັດວຽກຢູ່ຫລືບໍ່ແລະຖ້າການ ຈຳ ລອງເຮັດ ໃໝ່ ກໍ່ໄດ້.

ເພື່ອເຮັດສິ່ງນີ້, ມຸ່ງຫນ້າໄປຍັງເຄື່ອງແມ່ຂ່າຍແມ່ບົດແລະເຂົ້າສູ່ລະບົບຖານຂໍ້ມູນເຊີຟເວີຖານຂໍ້ມູນ MySQL.

$ sudo mysql -u root -p

ສ້າງຖານຂໍ້ມູນຕົວຢ່າງ.

mysql> CREATE DATABASE replication_database;

ຕອນນີ້ອອກໄປຫາ Slave server ແລະອີກຄັ້ງ, ເຂົ້າສູ່ server server ຖານຂໍ້ມູນ MySQL.

$ sudo mysql -u root -p

ດຽວນີ້ໃຫ້ຂຽນຖານຂໍ້ມູນທັງ ໝົດ ໂດຍໃຊ້ ຄຳ ສັ່ງຕໍ່ໄປນີ້.

mysql> SHOW DATABASES;

ຖ້າທ່ານເຫັນຖານຂໍ້ມູນທີ່ຖືກສ້າງຂື້ນ, ຫຼັງຈາກນັ້ນການຕັ້ງຄ່າການລວບລວມຂໍ້ມູນ MySQL Master-Slave ກໍ່ເຮັດວຽກໄດ້.

ການເຮັດແບບ ຈຳ ລອງແມ່ນຂະບວນການທີ່ງ່າຍດາຍທີ່ສາມາດເຮັດໄດ້ງ່າຍ. ໃນຄູ່ມືນີ້, ທ່ານໄດ້ຮຽນຮູ້ວິທີທີ່ທ່ານສາມາດສ້າງແບບ ຈຳ ລອງຂອງ MySQL ເພື່ອເປັນທາດໃນ Linux RHEL 8.