Thursday, June 1, 2017

Lab 9.6 Konfigurasi Replication mariadb Centos 7


asalamualaikum wr wb 

pada kali ini saya akan share tutorial yaitu  Konfigurasi Replication mariadb Centos 7. jadi replication ini berguna agar server pada databasenya itu bisa di singkronisasi antara server masternya dan server lainnya secara otomatis. jika si server database master membuat database, dengan otomatis si server lainnya akan terdapat juga database yang telah dibuat oleh si master.. secara gambaran fungsi replication seperti itu.

okee.. untuk mempersingkat waktu kita mulai saja konfigurasinya..

Persiapan

untuk persiapan yang dibutuhkan adalah :
  • telah terinstall apache pada centos kalian
  • sudah ada database mariadbnya di kedua server. bagi yang belum kunjungi saja DISINI

TOPOLOGI

Konfigurasi Server Master

1. kita konfigurasikan file my.cnf yang berada di direktori /etc/my.cnf ditahap ini kita lakukan untuk mengatur id server pada replicatiom dan untuk mengatur lognya.


2. selanjutnya kita tambahkan sintaks di bawah [mysqld] dan sintaksnya seperti pada gambar di bawah ini.


log-bin=mysql-bin merupakan binary untuk logging sql, yaitu mysql.bin
server-id=1 merupakan penamaan saja pada server agar kita bisa tahu mana yang nomer server master nya dan mana yang tidak.. dan ini hanya berlaku untuk angka, untuk huruf serta kata ataupun kalimat tidak bisa digunakan.

3. selanjutnya kita restart service mariadbnya agar konfigurasi sebelumnya berjalan.


4. selanjutnya kita akan membuat user. tapi sebelum itu kita harus masuk ke bash mysql nya.. oh yaa user ini nantinya akan digunakan untuk replication pada server slave.


5. sebelum kita mulai membuat user replication nya, kita hentikan dulu mode slave nya di server master.


6. selanjutnya kita buat deh user replication. disini saya beri nama usernya replication dan passwordnya rahasia


7. selanjutnya kita jalankan perintah flush privileges; yang berguna untuk mereload menyuruh server untuk membaca ulang tabel hak akses.


8. keluar deh dari bash mariadb nya.


9. selanjutnya kita izinkan service mysql nya pada firewall dan jangan lupa untuk mereload firewall nya.


Konfigurasi Server Slave

1. sekarang kita masuk ke server slave. pertama yang kita lakukan adalah mengkonfigurasi file my.cnf yang berada di direktori /etc/my.cnf ditahap ini kita lakukan untuk mengatur id server pada replication dan untuk mengatur lognya serta yang lainnya.


2. sekarang kalian tambahkan sintaks di bawah [mysqld] seperti pada gambar di bawah. utuk server-id usahakan berbeda dengan server-id yang ada di server masternya.


read_only=1 yang berarti kita mengaktifkan akses read_only database pada server slavenya. jadi si slave ini hanya bisa membaca aja dan tidak bisa melakukan pembaharuan terhadap database.

report-host=node1.adityax.com merupakan host dari server slave itu sendiri, bisa anda atur menjadi nama domain, hostname, atau ip address server slave kalian. Disini saya mengaturnya dengan domain.

3. sekarang kita restart service mariadbnya pada server slave.


4. jangan lupa kalian izinkan service mariadb nya pada firewall serta mereload firewallnya.




Masuk ke Server Master Lagi

1.  kita masuk lagi ke server masternya, lalu kita masuk ke bash mariadbnya.


2. setelah masuk ke bash nya, kita lakukan flush terhadap semua tables yang terbuka. Tabel baru hanya diperbolehkan dibuka dengan read lock sampai perintah unlock tables; dijalankan


3. sekarang kita akan mengecek status master dengan perintah show master status; kita melakukan ini berguna untuk melihat file beserta position masternya yang nantinya kita akan gunakan pada saat slave melakukan join replication ke master.


4. sekarang kita akan melakukan backup semua database pada server master dengan menggunakan mysqldump. backup ini nantinya akan kita restore atau akan di transfer ke server slave. ohh ya nanti kalian akan dimintai password mysql nya.

mysqldump -u root -p --all-databases --lock-all-tables --events > mysql_dump.sql


5. selanjutnya kita masuk lagi ke bash mariadbnya.


6. sekarang kita lakukan unlock tables yang berguna untuk melepas global (semua) read lock yang diperoleh pada perintah flush tables with read lock;


7. kita exit dari bash mariadbnya.


8. setelah keluar kita copy file mysql_dump.sql yang merupakan file backupan yang kita buat sebelumnya, lalu kita kirimkan ke server slave nya dan ditaruh dimana aja. klo disini saya naruhnya di direktori /tmp/ pada server slave nya.


Masuk Ke Server Slave

1. sekarang kita masuk ke server slave nya. disini kita akan melakukan restore dump backup mysql_dump.sql yang tadi dikirim dari server master.


dengan simbol < diatas, kita akan memasukkan file /tmp/mysql_dump.sql kedalam mysq -u root -p sebagai input

2. masuk ke bash mariadb nya.


3. sekarang kita akan melakukan join dari slave ke master dan caranya seperti gambar di bawah ini. sesuaikan host masternya, user masternya beserta passwordnya dan log file master beserta log pos masternya yang ada pada server master kalian.


change master to merupakan sintaks yang digunakan untuk mengatur parameter pada server slave untuk terhubung dan berkomunikasi dengan server master selama replikasi.

master_host : merupakan alamat host server master

master_user : merupakan user replica pada server master

master_password : password yg digunakan dari user tersebut

master_log_file : ini merupakan log file milik master. Jadi anda bisa melihatnya pada show master status yang sebelumnya dilakukan.

master_log_pos : merupakan position yang terlihat pada proses show master status yang sebelumnya dilakukan.

4. sekarang kita start slave nya bagi yang belum mengaktifkan slave nya. bagi yang sudah kalian stop dulu baru kalian start slavenya.


Veritifikasi dan pengujian

untuk veritifikasi saja. pada server slave kita lakukan cek status slave dengan perintah show slave status\G untuk keterangan \G ini digunakan untuk output yang dihasilkan tertata secara rapi. Hal ini dilakukan pada server slave.


untuk veritifikasi pada client nya. kita cukup membuka phpmyadmin pada server master nya. disini server masternya sudah saya beri domain, jadi yang saya masukkan adalah nama domain dari server masternya yaitu www.adityax.com/phpMyAdmin/ setelah masuk ke phpmyadmin pada server master. disitu kita buat database yang gunanya untuk mengecek apakah pada server slave nya itu ikut muncul atau terbuat databasenya. jadi buat dulu deh database pada masternya.. 

setelah terbuat kalian masuk ke  phpmyadmin pada slave nya. disini phpmyadmin slave nya saya memakai domain, jadi yang saya ketikkan adalah domain pada server slave nya yaitu node1.adityax.com/phpMyAdmin/ setelah masuk kalian cek database yang tadi dibuat di server master itu dah ada belum di slave nya.. klo sudah ada berarti konfigurasi yang kalian lakukan selama ini telah berhasil dengan memuaskan.


yeee selesai sudah kita ngeconfig database replication nya..
sekian dari saya, mohon maaf bila ada kesalahan dan saya ucapkan terimakasih bagi yang mengunjungi blog ini
semoga bermanfaat :)

Lorem ipsum is simply dummy text of the printing and typesetting industry.


EmoticonEmoticon