Masuk mysql ke server replikasi
replikasi@localhost~#mysql –u root –p
ketik perintah
mysql>show slave status \G;
perhatikan gambar dibawah jika replikasi berjalan dengan baik maka statusnya untuk slave io dan sql :yes
Cara mengatasi jika eror
Masuk server monitoring replikasi kemudian jalan kan script dibawah ini dimana sudah disimpan di server ini dan mohon seseuaikan dan perhatikan antara server master dan slave
#!/bin/bash
RSYNC=/usr/bin/rsync
SSH=/usr/bin/ssh
SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
#### (PERHATIKAN SCRIPT SECARA DETAIL KE BAWAH, UBAH SESUAI KEBUTUHAN)
### VARIABEL DATABASE
## silahkan di perbanyak jika database lebih dari satu dengan di pisahkan spasi, seperti contoh array=( cc_diknas takaful_cc pfizer )
array=( purence_telesales )
### VARIABEL MASTER
ip_master=192.168.0.25
user_master=root
pass_master=J@R1ng
dbuser_master=root
dbpass_master=J@R1ng
folder_database_master=/var/lib/mysql/
folder_log_master=/var/lib/mysql/
### VARIABEL SLAVE
ip_slave=192.168.0.141
user_slave=root
pass_slave=J@R1ng
dbuser_slave=root
dbpass_slave=
folder_database_slave=/var/lib/mysql/
folder_log_slave=/var/lib/mysql/
### VARIABEL MONITOR REPLIKASI
# ganti nama file notif
file_monitor=/home/script_monitoring/notif_purence.sh
port=3306
backupdir=/home/temp_database/
### DUMP DATABASE AND RESTORE DATABASE
## DUMP DATABASEE and extract
for database1 in "${array[@]}"
do
rm -r -f $backupdir/$database1.sql
# dengan password mysql master
mysqldump --opt -u $dbuser_master -p$dbpass_master --host=$ip_master --port=$port --databases $database1 | gzip > $backupdir/$database1.sql.gz
# tanpa password mysql master
# mysqldump --opt -u $dbuser_master --host=$ip_master --port=$port --databases $database1 | gzip > $backupdir/$database1.sql.gz
sleep 5s
echo selesai backup database master
gunzip -S .zip $backupdir/$database1.sql.gz
sleep 5s
echo selesai extract database master
## RESTORE DATABASE and delete
# dengan password mysql slave
# mysql -u $dbuser_slave -p $dbpass_slave -h $ip_slave -e "show databases"
# tanpa password mysql slave
mysql -u $dbuser_slave -h $ip_slave -e "drop database $database1"
sleep 5s
echo selesai hapus database slave
mysql -u $dbuser_slave -h $ip_slave -e "source $backupdir/$database1.sql"
sleep 5s
echo selesai import database slave
done
### SLAVE PROSES
sshpass -p $pass_slave ssh -o StrictHostKeyChecking=no $user_slave@$ip_slave "/etc/init.d/mysqld stop"
echo selesai stop mysqld slave
sleep 5s
sshpass -p $pass_slave ssh -o StrictHostKeyChecking=no $user_slave@$ip_slave "find $folder_database_slave -name 'master.info' -exec rm -f {} \;"
sshpass -p $pass_slave ssh -o StrictHostKeyChecking=no $user_slave@$ip_slave "find $folder_database_slave -name 'binlog.*' -exec rm -f {} \;"
sshpass -p $pass_slave ssh -o StrictHostKeyChecking=no $user_slave@$ip_slave "find $folder_database_slave -name '*bin.*' -exec rm -f {} \;"
sshpass -p $pass_slave ssh -o StrictHostKeyChecking=no $user_slave@$ip_slave "find $folder_database_slave -name '*.index' -exec rm -f {} \;"
sshpass -p $pass_slave ssh -o StrictHostKeyChecking=no $user_slave@$ip_slave "find $folder_database_slave -name '*.err' -exec rm -f {} \;"
sshpass -p $pass_slave ssh -o StrictHostKeyChecking=no $user_slave@$ip_slave "find $folder_database_slave -name '*.pid' -exec rm -f {} \;"
sshpass -p $pass_slave ssh -o StrictHostKeyChecking=no $user_slave@$ip_slave "find $folder_database_slave -name '*-log*' -exec rm -f {} \;"
echo selesai hapus log slave
sleep 5s
### MASTER PROSES
sshpass -p $pass_master ssh -o StrictHostKeyChecking=no $user_master@$ip_master "/etc/init.d/mysqld stop"
echo selesai stop mysqld master
sleep 5s
sshpass -p $pass_master ssh -o StrictHostKeyChecking=no $user_master@$ip_master "find $folder_log_master -name '*bin.*' -exec rm -f {} \;"
sshpass -p $pass_master ssh -o StrictHostKeyChecking=no $user_master@$ip_master "find $folder_log_master -name '*bin.*' -exec rm -f {} \;"
sshpass -p $pass_master ssh -o StrictHostKeyChecking=no $user_master@$ip_master "find $folder_log_master -name '*.err' -exec rm -f {} \;"
sshpass -p $pass_master ssh -o StrictHostKeyChecking=no $user_master@$ip_master "find $folder_log_master -name '*.pid' -exec rm -f {} \;"
sshpass -p $pass_master ssh -o StrictHostKeyChecking=no $user_master@$ip_master "find $folder_log_master -name 'binlog.*' -exec rm -f {} \;"
echo selesai hapus log master
sleep 5s
sshpass -p $pass_master ssh -o StrictHostKeyChecking=no $user_master@$ip_master "/etc/init.d/mysqld start"
echo selesai start mysqld master
sleep 5s
### SLAVE PROSES
sshpass -p $pass_slave ssh -o StrictHostKeyChecking=no $user_slave@$ip_slave "/etc/init.d/mysqld start"
echo selesai start mysqld slave
sleep 5s
### MONITOR REPLIKASI PROSESS
$file_monitor
echo SELESAI PROSESS REPLIKASI SILAHKAN CEK EMAIL ANDA
++++++++++++++++++++++++++
Simpan script diatas dimana penulis menyimpan di lokasi /home/script_replikasi/purence dengan nama purence_repl_mysql_mycnf_dump.sh
Masuk direktori tersebut kemudian eksekusi file tersebut
Proses saat menjalankan script diatas
masih eror