membuat replikasi data bertujuan membuat backup db di server 1 sebagai Master yang akan secara otomatis ter replikasi ke Server 2 sebagai slave. kita simulasi tatacaranya dimana seluruh user dan db dari server 1 akan di replikasi semuanya sebagai berikut.
IP Master : 192.168.1.1
Ip slave : 192.168.1.2
1. Setting Server MASTER
Bukan centos dan buka file berikut
sudo nano /etc/my.cnf
copykan script berikut sesuaikan data Ip dengan server kmu dan simpan dibawal [mysqld].
log-bin server_id=1 bind-address=192.168.1.1
server id merupakan id pembeda dari server master dengan server slave.
simpan dan restart mariadb
systemctl restart mariadb
Buka centos dan login ke mariadb, kemudian bukan user untuk bisa di gunakan di server slave dengan otoritas sebagai slave
CREATE USER '$master_username'@'192.168.1.2' IDENTIFIED BY '$master_password';
GRANT REPLICATION SLAVE ON *.* TO '$master_username'@'192.168.1.2';
FLUSH PRIVILEGES;
SHOW MASTER STATUS;
+------------------+----------+--------------+------------------+ | File | Position | Binlog_Do_DB | Binlog_Ignore_DB| +------------------+----------+--------------+------------------+ | mariadb-bin.000026 | 343 | | | +------------------+----------+--------------+------------------+ 1 row in set (0.00 sec)
perhatikan data dari Server Master berikut sebagai acuan utnuk konfigurasi di server slave
2. Setting Server Slave
Bukan centos dan buka file berikut
sudo nano /etc/my.cnf
copykan script berikut sesuaikan data Ip dengan server kmu dan simpan dibawal [mysqld].
log-bin server_id=2 bind-address=192.168.1.2
server id merupakan id pembeda dari server master dengan server slave.
simpan dan restart mariadb
systemctl restart mariadb
Buka centos dan login ke mariadb, kemudian bukan user untuk bisa di gunakan di server Master dengan otoritas sebagai slave
CREATE USER '$master_username'@'192.168.1.1' IDENTIFIED BY '$master_password';
GRANT REPLICATION SLAVE ON *.* TO '$master_username'@'192.168.1.1';
FLUSH PRIVILEGES;
matikan service dari slave di server slave dengan
SLAVE STOP;
aktifkan system replikasi dengan mengkoneksikan server slave dengan server master dengan cara script dibawah. perlu di ingat sebelum memasukan code dibawah kita harus tau mariadb-bin dan Master_log_pos terakhir dari server master diatas dengan perintah >>> SHOW MASTER STATUS;
CHANGE MASTER TO MASTER_HOST = '192.168.1.1', MASTER_USER = '$master_username', MASTER_PASSWORD = '$master_password', MASTER_LOG_FILE = 'mariadb-bin.000026', MASTER_LOG_POS = 343;
kemudin baru kita nyalakan service dari slave master dengan perintah berikut dan cek hasilnya.
SLAVE START;
Catatan : konfigurasi berhasil apabila kita membuat perubahan data di Master Server makan di Slave server pun akan berubah secara otomatis.
sekian Terimaksih jika ada kesalahan penulisan mohon di partisipasinya di kolom komentar.