Tutorial Hybrid 3PC

Tutorial Replikasi Multiway




Pada tutorial ini:
Master 1 adalah komputer XP1(Kiri)
Master 2 adalah komputer XP2(Kanan)
Client 3 adalah komputer XP3(Kanan)



# Syarat Wajib Replikasi Multiway
==============================================
1. Matikan Firewall pada kedua Master
2. Catat IP Client dan IP Master
 
   IP Master1(Windows XP1): 10.4.9.11
   IP Master2(Windows XP2): 10.4.9.12
   IP Client3(Windows XP2): 10.4.9.13

3. Ping koneksi antara Master1, Master2 dan Client3 (Buka CMD)
4. Hidupkan xampp pada Master1, Master2 dan Client3 dan
   Buat database Penjualan(sesuaikan dengan database anda)
   di Master1 dan Master2(Buka CMD)

   CD\
   CD XAMPP\MYSQL\BIN
   MYSQL -u root -p

   Create database penjualan;
   exit;

5. Matikan xampp pada Master1, Master2 dan Client3
6. Edit file my.ini dan cek server-id ada yang sama atau tidak,
   jika ada tambahkan #(pagar)
   PADA [MYSQLD] TAMBAHKAN :

# UNTUK MASTER1

server-id=1
replicate-do-db=penjualan
binlog-do-db=penjualan
log-bin=mysql-bin
log-slave-updates
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

# UNTUK MASTER2

server-id=2
replicate-do-db=penjualan
binlog-do-db=penjualan
log-bin=mysql-bin
log-slave-updates
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

# UNTUK CLIENT3

server-id=3
replicate-do-db=penjualan
binlog-do-db=penjualan
log-bin=mysql-bin
log-slave-updates
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

Simpan Dan Hidupkan xampp pada Master1 dan Master2
===================================================================================
7. Siapkan Server Untuk kedua Master

# UNTUK MASTER1

MYSQL -u root -p

GRANT REPLICATION SLAVE ON *.* TO 'server2'@'(lihat ip master2)' IDENTIFIED BY 'server2';
FLUSH PRIVILEGES;
SHOW MASTER STATUS;


# UNTUK MASTER2

MYSQL -u root -p

GRANT REPLICATION SLAVE ON *.* TO 'server1'@'(lihat ip master1)' IDENTIFIED BY 'server1';
GRANT REPLICATION SLAVE ON *.* TO 'server3'@'(lihat ip client3)' IDENTIFIED BY 'server3';
FLUSH PRIVILEGES;
SHOW MASTER STATUS;


8. Jika kedua Server SIAP , Kemudian Lakukan Replikasi (Buka CMD)

# UNTUK MASTER1

SLAVE STOP;
CHANGE MASTER TO MASTER_HOST='(lihat ip master2)', MASTER_USER='server1', MASTER_PASSWORD='server1',
MASTER_LOG_FILE='mysql-bin.000001(lihat di master2)', MASTER_LOG_POS=107(lihat di master2);
START SLAVE;
SHOW SLAVE STATUS\G;

Jika masih connecting ulangi langkah terakhir
SHOW SLAVE STATUS\G;

# UNTUK MASTER2

SLAVE STOP;
CHANGE MASTER TO MASTER_HOST='(lihat ip master1)', MASTER_USER='server2', MASTER_PASSWORD='server2',
MASTER_LOG_FILE='mysql-bin.000001(lihat di master1)', MASTER_LOG_POS=107(lihat di master1);
START SLAVE;
SHOW SLAVE STATUS\G;

Jika masih connecting ulangi langkah terakhir
SHOW SLAVE STATUS\G;

# UNTUK CLIENT3

SLAVE STOP;
CHANGE MASTER TO MASTER_HOST='(lihat ip master2)', MASTER_USER='server3', MASTER_PASSWORD='server3',
MASTER_LOG_FILE='mysql-bin.000001(lihat di master3)', MASTER_LOG_POS=107(lihat di master3);
START SLAVE;
SHOW SLAVE STATUS\G;

Jika masih connecting ulangi langkah terakhir
SHOW SLAVE STATUS\G;

###########################################################################
Jika sudah Yes, Yes berarti konek tinggal tes replikasinya.

NB: Proses harus urut dari no 1,2,3, dst. bergantian dari Master1 ke Master2.
(jika langsung mis no 3 sblm no 2 dan 1 selesai maka akan error)

1. Buat tabel barang dan isi tabelnya PADA MASTER1

use penjualan;
create table barang(kode varchar (5) primary key, nama varchar(20), harga int(12));
insert into  barang values
('B01','mouse dr master 1','50000');


2.Tampilkan dan isi tabel barang PADA MASTER2

use penjualan;
insert into  barang values
('B02','keyboard dr master 2','75000');
select * from barang;

3. Tampilkan dan isi tabel barang PADA Client3

use penjualan;
insert into  barang values
('B03','monitor dr client 3','600000'),
select * from barang;

6. Tampilkan isi tabel barang PADA MASTER1 dan MASTER2

select * from barang;


===============================================================================================
                                  =====> KESIMPULAN <=====

+ Perubahan database yang di Master1,2 berpengaruh di pada Master Maupun Client.
+ Perubahan database yang di Client3 tidak berpengaruh di Master1,2, tetapi hanya berpengaruh di Client3 saja.
# SEMOGA REPLIKASI ANDA BERHASIL ^_^






Post a Comment

0 Comments