Anda di halaman 1dari 11

PRAKTIKUM IV

SISTEM TERDISTRIBUSI
“REPLICATION DB”

Nama : Aurelia Vitania Rusli


Kelas : 3C
NIM : 42518059

Jurusan Teknik Elektro


Program Studi Tekink Komputer dan Jaringan
I. HASIL DAN ANALISA
1. Instal Server MySQL
SSH ke server pertama sebagai pengguna non-root kita. Instal server Mysql.

Tetapkan kata sandi root untuk MySQL dan konfigurasikan keamanan.

Ulangi proses yang sama di dua server lainnya.

SERVER 2

SERVER 3

2. Buat Nama Replikasi Grup


SSH ke Server 1 dan masuk ke server MySQL sebagai root.

Masukkan kata sandi root server MySQL yang telah dibuat dan tekan ‘ENTER’ untuk
melanjutkan.
Hasilkan UUID seperti pada gambar dibawah ini.

Setiap server menggunakan UUID ini sebagai nama grup replikasi.


3. Konfigurasi ke Server1. Edit /etc/mysql/my.cnf

Salin informasi dibawah ini di akhir file.


 Ganti 192.0.2.1 dengan alamat Server 1

 Ganti 192.0.2.2 dan 192.0.2.3 dengan alamat Server 2 dan 3 masing-masing.


 Ganti nilai loose-group_replication_group_name dengan UUID dari Langkah
2.

[mysqld]

server_id=1
bind-address=0.0.0.0
gtid_mode=ON
enforce_gtid_consistency=ON
binlog_checksum=NONE

plugin_load_add='group_replication.so'
group_replication_single_primary_mode=OFF
loose-group_replication_group_name="00000000-1111-2222-3333-
444444444444"
loose-group_replication_start_on_boot=OFF
loose-group_replication_local_address= "192.0.2.1:33061"
loose-group_replication_group_seeds="192.0.2.1:33061,
192.0.2.2:33061, 192.0.2.3:33061"
loose-group_replication_bootstrap_group=OFF
report_host=192.0.2.1

Note : loose- awalan untuk variabel group_replication memerintahkan server


untuk memulai bahkan jika plugin Grup Replikasi tidak dimuat ketika dimulai
Server.
Setelah itu, simpan dan tutup file.
Penjelasan konfigurasi MySQL :
 Server_id = 1 (ini adalah server 1 di grup replikasi)
 Bin-address = 0.0.0.0 (berfungsi untuk listening semua alamat IP)
 Gtid_mode = ON (berfungsi untuk menjalankan replikasi dengan
pengidentifikasi transaksi global)
 Force_gtid_consistency = ON (MySQL hanya akan menjalankan pernyataan
yang dapat dicatat dengan aman menggunakan GTID)
 Binlog_checksum = NONE (Menonaktifkan penulisan checksum ke log biner)
 Plugin_load_add=’group_replication.so’ (berfungsi untuk memuat plugin
replikasi grup)
 Group_replication_single_primary_mode = OFF (model replikasi multi-master,
semua anggota memiliki akses baca-tulis)
 loose-group_replication_group_name = "00000000-1111-2222-3333-
444444444444" (nama unik grup replikasi)
 loose-group_replication_start_on_boot = OFF (berfungsi untuk mematikan
replikasi saat boot menyala)

 loose-group_replication_local_address = "192.0.2.1:33061" (Alamat dan porta


yang digunakan oleh server 1 ini untuk replikasi).

 loose-group_replication_group_seeds = "192.0.2.1:33061, 192.0.2.2:33061,


192.0.2.3:33061" (Kombinasi host dan port dari anggota grup lainnya.)

 loose-group_replication_bootstrap_group = OFF (berfungsi menonaktifkan


untuk menghindari bootstrap grup dari beberapa server dan membuat konflik).

 report_host = 192.0.2.1 (Alamat IP yang digunakan server ini untuk melaporkan


ke anggota lain).
Setelah itu, restart server MySQL untuk menerapkan perubahan.

4. Buat Replikasi User


Masuklah ke MySQL di server 1

Buatlah replikasi user. Ganti EXAMPLE_PASSWORD dengan sandi yang kuat.

mysql> SET SQL_LOG_BIN=0;


mysql> CREATE USER 'replication_user'@'%' IDENTIFIED WITH
mysql_native_password BY 'EXAMPLE_PASSWORD';
mysql> GRANT REPLICATION SLAVE ON *.* TO 'replication_user'@'%';
mysql> FLUSH PRIVILEGES;
mysql> SET SQL_LOG_BIN=1;
mysql> CHANGE MASTER TO MASTER_USER='replication_user',
MASTER_PASSWORD='EXAMPLE_PASSWORD' FOR CHANNEL
'group_replication_recovery';
Bootstrap Plugin Replikasi Grup di Server 1

Note : Hanya bootstrap satu anggota grup untuk menghindari pembuatan beberapa grup
dengan nama yang sama. Untuk melakukan ini, jalankan perintah di bawah ini di server
pertama.

Note : Matikan group_replication_bootstrap_group untuk menghindari membuat


banyak grup saat kita me-restart server MySQL.

Note : Source code ini digunakan untuk melakukan verivikasi status grup dengan
menyatakan replication_group_members

Setelah itu, kita akan membuat databases pengujian yaitu test_db, kemudian kita beralih
ke database test_db; dan yang terakhir kita membuat table uji yaitu test_tbl seperti pada
gambar dibawah ini.
5. Konfigurasi Server 2
SSH ke Server 2 kemudian edit /etc/mysql/my.cnf

Tempel informasi di bawah ini di akhir file.

 Ganti 192.0.2.2 dengan alamat Server 2.


 Ganti 192.0.2.1 dan 192.0.2.3 dengan alamat Server 1 dan 3, masing-
masing.
 Ganti nilai loose-group_replication_group_name dengan UUID dari
Langkah 2.

Setelah itu, simpan dan tutup file yang telah di edit.

Selanjutnya restart MySQL

Masuklah ke MySQL sebagai root.

Buatlah pengguna replikasi untuk Server 2. Ganti EXAMPLE_PASSWORD dengan


sandi kuat.
Kemudian, mulailah dengan plugin replikasi grup.

Lakukanlah verivikasi server 2 untuk menjadi anggota grup seperti pada gambar
dibawah ini.

6. Konfigurasi Server 3
SSH ke Server 3. Edit /etc/mysql/my.cnf

Tempel informasi di bawah ini di akhir file.

 Ganti 192.0.2.3 dengan alamat Server 3.


 Ganti 192.0.2.1 dan 192.0.2.2 dengan alamat Server 1 dan 2 masing-
masing.
 Ganti nilai loose-group_replication_group_name dengan UUID dari
Langkah 2.
Selanjutnya, simpanlah dan tutup file.

Kemudian, restart MySQL.

Masuklah ke MySQL sebagai root.

Buat pengguna replikasi untuk Server 3. Ganti EXAMPLE_PASSWORD dengan sandi


kuat.
Selanjutnya, mulailah plugin Replikasi Grup.

Gambar dibawah ini adalah hasil output konfigurasi bahwa plugin MySQL Group
Replication berfungsi di ketiga server.

II. KESIMPULAN

Replikasi MySQL adalah salah satu metode yang digunakan untuk menyediakan back up
database secara real time, atau pun digunakan untuk mirror situs. Proses sinkronisasi data ini,
dilakukan antara satu master (server) dengan satu atau lebih slave(client), atau pun antar
master, secara sederhana cara kerja dari replikasi ini dapat digambarkan seperti berikut ini :
data pada database slave secara otomatis berubah setiap kali ada pemasukan, perubahan atau
pun penghapusan data pada database master, sehingga proses back up data dapat dilakukan
secara terus menerus dan terjadi secara otomatis.

Anda mungkin juga menyukai