jump to navigation

Replikasi database MySql September 9, 2008

Posted by budijati in Database Mysql.
trackback

Langkah Setup MySQL Replication.

Requirements;
Minumum 2 Working MySQL Server as Master and Slave
Networking (TCP/IP)

Asumsi:
Server master dan slave sudah siap dan masing-masih memiliki IP address sbb:
-master IP= 192.168.0.1
-slave IP= 192.168.0.100
Database yang akan direplika adalah database “bpr”.
Kedua server telah memiliki database yang identik. (isi database bpr di server harus dalam keadaan sama dengan database di slave)
yang di master dump (jadiin .sql) aja dulu trus jangan ada transaksi dulu di master
trus load file .sql di slave….

Langkah-langkah:

1.Edit /etc/my.cnf pada master
pada section [mysqld] tambahkan server-id.
Aktifkan juga binary logging (log-bin) karena tanpa binary logging MySQL tidak bisa bertindak sebagai master replikasi.
Misal :

[mysqld]
old-password=1
port=3306
log-bin
binlog-do-db=bpr
binlog-ignore-db=mysql
binlog-ignore-db=test
server-id=1

(jgn lupa merestart service mysqld setelah merubah konfigurasi)

2.. Edit /etc/my.cnf pada slave
pada section [mysqld] tambahkan server-id. Misal :

[mysqld]
old-password=1
port=3306
server-id=2
(jgn lupa merestart service mysqld setelah merubah konfigurasi)

3.Persiapkan user replikasi pada Master (dg perintah query misal sbb)

mysql> GRANT REPLICATION SLAVE ON *.*
-> TO ‘mirror’@’191.168.0.100′ IDENTIFIED BY ‘mirror’;

4.Periksa status master dengan perintah query (pada Server Master) sbb:

mysql > SHOW MASTER STATUS;

Jika tidak ada masalah, outputnya kurang lebih seperti dibawah:

+—————+———-+—————+——————-+
| File | Position |Binlog_Do_DB | Binlog_Ignore_DB |
+—————+———-+—————+——————-+
| mysql-bin.003 | 73 | bpr | manual, mysql |
+—————+———-+—————+——————-+
Penjelasan Singkat;
File = mysql-bin.003 adalah file binary log yang sedang dipakai MySQL master.
Position = 73 adalah posisi log pada file mysql-bin.003
Binlog_Do_DB = database yang diawasi dan dicatat dalam log. (database ini bisa direplika)
Binlog_Ignore_DB = database yang tidak dicatat dalam log. (database ini tidak dapat direplika)

5.Arahkan slave dengan melakukan Query pada Server Slave

mysql> CHANGE MASTER TO
-> MASTER_HOST=’192.168.0.1′,
-> MASTER_USER=’mirror’,
-> MASTER_PASSWORD=’mirror’,
-> MASTER_LOG_FILE=’mysql-bin.003′,
-> MASTER_LOG_POS=73;
Master_log_file dan Master_log_pos diisi sesuai output query master status di point 4

6.Aktifkan Slave dengan melakukan Query pada Slave Server

mysql> START SLAVE;
Setelah itu ada baiknya melakukan pengecekan status Slave server dengan Query:
mysql> SHOW SLAVE STATUS;

Sampai disini seharusnya jika tidak ada error, maka slave sudah aktif dan bisa dicoba dengan melakukan perubahan pada Server Master.

Comments»

No comments yet — be the first.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.