Replikasi Database Multiway Menggunakan Mysql - Mari Belajar Coding

07 Maret 2019

Replikasi Database Multiway Menggunakan Mysql



Replikasi Database Multiway Menggunakan Mysql

Artikel ini merupakan kelanjutan dari Replikasi Database Master - Slave yang pernah saya buat. Pada kali ini, saya akan membuat tutorial replikasi database multiway atau master to master menggunakan mysql. Dengan replikasi master to master memungkinkan distribusi data antara master 1 ke master 2 dan sebaliknya master 2 ke master 1.

Replikasi Database Multiway Menggunakan Mysql

1. Siapkan PC/Laptop (minimal 2)

2. Hubungkan antar PC menggunakan kabel LAN, setting alamat IP pada masing-masing PC agar terhubung
192.168.1.1 //  PC 1 sebagai Master 1

192.168.1.2 //  PC 2 sebagai Master 2

3. Buat database pada masing-masing PC, nama database dan struktur tabelnya harus sama.
create database akademik;
use akademik;
create table mahasiswa(nim varchar(15)primary key not null,nama varchar(40), alamat text);

4. Setting PC 1 sebagai  server master 1
- Matikan firewall (Start | Settings | Control Panel | Windows Firewall | Off)
- Edit file my.ini (C:\Xammp\Mysql\Bin\My.Ini) Menggunakan Notepad. Pada  [MYSQLD] Tambahkan :
     server-id=1
      replicate-do-db=akademik
      log-bin=mysql-bin
      binlog-do-db=akademik
      relay-log=C:\xampp\mysql\slave-relay.log
      relay-log-index=C:\xampp\mysql\slave-relay-log.index
      expire_logs_days=5
      max_binlog_size=100M

- Cari server-id = 1, jika ada selain yang diatas diberi tanda # (#server-id=1). pastikan server-id=1 hanya ada satu yang aktif dibawah [mysqld]. Setelah itu simpan dan restart mysql di xampp control panel. jika error ulangi langkah yang diatas.
- Masuk ke Mysql menggunakan command line (Start|Run|Cmd|Ok)
C:\cd xammp\mysql\bin
mysql -u root -p
GRANT REPLICATION SLAVE ON *.* TO 'server2'@'192.168.1.2' IDENTIFIED BY 'server2';
FLUSH PRIVILEGES;
SHOW MASTER STATUS;
STOP SLAVE ; // Jika error ganti dengan SLAVE STOP;
CHANGE MASTER TO MASTER_HOST='192.168.1.2',
         MASTER_USER='server1', MASTER_PASSWORD='server1',
         MASTER_LOG_FILE='mysql-bin.000001', //lihat  file dari show master status MASTER 2
         MASTER_LOG_POS=621; //lihat position dari show master status MASTER 2
START SLAVE;
SHOW SLAVE STATUS\G;

Untuk master_log_file dan master_log_pos teman-teman bisa melihat dari show master status server master 2

5. Setting PC 2 sebagai server Master 2
- Matikan firewall (Start | Settings | Control Panel | Windows Firewall | Off)
- Edit file my.ini (C:\Xammp\Mysql\Bin\My.Ini) Menggunakan Notepad. Pada  [MYSQLD] Tambahkan :
server-id=2
replicate-do-db=akademik
log-bin=mysql-bin
binlog-do-db=akademik
relay-log=C:\xampp\mysql\slave-relay.log
relay-log-index=C:\xampp\mysql\slave-relay-log.index
expire_logs_days=5
max_binlog_size=100M

- Cari server-id = 1,diberi tanda # (#server-id=1).Setelah itu simpan dan restart mysql di xampp control panel. jika error ulangi langkah yang diatas.
- Masuk ke mysql menggunakan command line (Start|Run|Cmd|Ok)
C:\cd xammp\mysql\bin
mysql -u root -p
GRANT REPLICATION SLAVE ON *.* TO 'server1'@'192.168.1.1' IDENTIFIED BY 'server1';
FLUSH PRIVILEGES;
SHOW MASTER STATUS;
STOP SLAVE ; // Jika error ganti dengan SLAVE STOP;
CHANGE MASTER TO MASTER_HOST='192.168.1.1',
         MASTER_USER='server2', MASTER_PASSWORD='server2',
         MASTER_LOG_FILE='mysql-bin.000001', //lihat  file dari show master status MASTER 1
         MASTER_LOG_POS=621; //lihat position dari show master status MASTER 1
START SLAVE;
SHOW SLAVE STATUS\G;

Untuk master_log_file dan master_log_pos teman-teman bisa melihat dari show master status server master 1
Replikasi Database Multiway Menggunakan Mysql
Jika status menunjukan seperti gambar di atas artinya  aktivasi replikasi Master to Master berhasil dan berjalan dengan baik.


Releate search:
  • Replikasi database mysql
  • Replikasi database multiway mysql
  • Replikasi database master to master

Related Posts

Load comments