Tahapan
replikasi database mysql yaitu
di server master dan
server slave dan install
paket rsync di kedua
server. Contoh di sini
saya akan mereplikasi database
dbContoh yang ada di
server master dan IPnya:
ip_master
: 192.168.20.30
ip_slave
: 192.168.20.47
user-mysql : root
password : 123
Konfigurasi di Server Master
1.
Install paket rsync
#
apt-get install rsync
2. Konfigurasi my.cnf
# vim /etc/mysql/my.cnf
server_id = 1
log_bin = /var/log/mysql/mysql-bin.log
binlog_do_db = dbContoh
server_id = 1
log_bin = /var/log/mysql/mysql-bin.log
binlog_do_db = dbContoh
#bin-address = 127.0.0.1
Keterangan:
log_bin = alamat untuk menyimpan log binari mysql
binlog-do-db = nama database yang akan direplikasi
server-id = id dari mesin master
#bin-address =
agar yang bisa menggunakan database tidak hanya dari localhost.
3. Restart service mysql
# service mysql restart
4. Masuk ke mysql sebagai root
# mysql -uroot -p123
5. Catat status master dari database dbContoh
USE dbContoh;
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;
+----------------------+----------+--------------------+------------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+----------------------+----------+-------------------+-------------------------+
| mysql-bin.000033 | 106 | dbContoh | |
+----------------------+----------+-------------------+-------------------------+
UNLOCK TABLES;
Konfigurasi di server master sudah selesai, sekarang kita lanjut ke konfigurasi di server slave.
3. Restart service mysql
# service mysql restart
4. Masuk ke mysql sebagai root
# mysql -uroot -p123
5. Catat status master dari database dbContoh
USE dbContoh;
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;
+----------------------+----------+--------------------+------------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+----------------------+----------+-------------------+-------------------------+
| mysql-bin.000033 | 106 | dbContoh | |
+----------------------+----------+-------------------+-------------------------+
UNLOCK TABLES;
Konfigurasi di server master sudah selesai, sekarang kita lanjut ke konfigurasi di server slave.
Konfigurasi di Server Slave
1.
Konfigurasi file
my.cnf
#
vim /etc/mysql/my.cnf
server_id=2
master_host=192.168.20.30
master_user=root
master_password=123
master_connect_retry=30
replicate_do_db=dbContoh
Keterangan:
server-id = id dari server slave
master-host = ip address server master
master-user = user name mysql untuk akses server master
master-password = password user name mysql untuk akses server master
master-connect-retry = waktu jeda (satuan detik) untuk melakukan koneksi ke master bisa conection ke master putus
replicate-do-db = nama database yang di replikasi
3. Restart service mysql
# service mysql restart
4. Masuk ke mysql sebagai root
# mysql -uroot -p123
master_host=192.168.20.30
master_user=root
master_password=123
master_connect_retry=30
replicate_do_db=dbContoh
Keterangan:
server-id = id dari server slave
master-host = ip address server master
master-user = user name mysql untuk akses server master
master-password = password user name mysql untuk akses server master
master-connect-retry = waktu jeda (satuan detik) untuk melakukan koneksi ke master bisa conection ke master putus
replicate-do-db = nama database yang di replikasi
3. Restart service mysql
# service mysql restart
4. Masuk ke mysql sebagai root
# mysql -uroot -p123
mysql > CREATE DATABASE dbContoh;
mysql > USE dbContoh;
mysql > LOAD DATA FROM MASTER;
mysql > SLAVE STOP;
mysql > SLAVE STOP;
mysql > CHANGE MASTER TO MASTER_HOST= '192.168.20.30',
mysql > MASTER_USER='root',
mysql > MASTER_PASSWORD='123',
mysql > MASTER_LOG_FILE='mysql-bin.000033',
mysql > MASTER_LOG_FILE='mysql-bin.000033',
mysql > MASTER_LOG_POS=106;
mysql > SLAVE START;
mysql > SHOW SLAVE STATUS;
Keterangan :
Keterangan :
LOAD DATA FROM MASTER = mengambil data
untuk yang pertama kalinya dari master ke slave.
parameter MASTER_LOG, MASTER_LOG_FILE, MASTER_LOG_POS mengambil dari
status master
SHOW SLAVE STATUS = untuk melihat status slave.
Konfigurasi Replikasi database mysql selesai..
SHOW SLAVE STATUS = untuk melihat status slave.