Binary logging harus diaktifkan pada server master karena binary log
adalah sebagai basis pengiriman perubahan data dari master ke slave.
Bila binary logging tidak diaktifkan maka replikasi tidak akan dapat
berjalan.
Untuk mengkonfigurasi binary log dan server id, anda harus mematikan
terlebih dahulu server mysql yang sedang berjalan dan mengubah file
my.cnf (atau my.ini). Tambahkan beberapa baris konfigurasi options
didalam bagian [mysqld]. Bila options tersebut telah ada tapi tidak
teraktifkan karena diberi tag comment (#), hapus tag comment tersebut
dan rubah sesuai kebutuhan anda. Sebagai contoh, untuk mengaktifkan
binary log mengunakan prefix nama mysql-bin, dan konfigurasi server id
adalah 1 sebagai berikut:
[mysqld]
log-bin=mysql-bin
server-id=1
Catatan:
Pastikan option skip-networking tidak diaktifkan pada server master
replikasi anda. Bila networking tidak diaktifkan maka slave tidak akan
dapat berkomunikasi dengan master dan replikasi tidak dapat berjalan.
[mysqld]
server-id=2
Anda tidak perlu mengaktifkan binary log pada slave, akan tetapi bila
anda mengaktifkan binary log pada slave, anda dapat menggunakan
binary log untuk backup data dan crash recovery pada slave, dan juga
anda dapat menggunakan slave untuk rancangan replikasi yang lebih
kompleks seperti menggunakan slave sebagai master untuk slave yang
lain.
Bila anda memiliki data yang sudah ada pada master yang ingin anda
sinkronisasikan dengan slave sebelum memulai proses replikasi, anda
harus menghentikan processing statement pada master, lalu dapatkan
koordinat binary log master saat itu dan dump data yang ada pada
master. Bila anda tidak menghentikan eksekusi statement pada master,
maka data dump dan informasi status master yang anda dapatkan tidak
akan sama dan akan berakhir dengan database yang tidak sesuai atau
corrupt pada slave.
Kolom File pada gambar diatas menampilkan nama dari log file
yang dan kolom position menampilkan posisi koordinat binary log
pada file tersebut. Dalam contoh diatas binary log adalah mysql-
bin.000029 dengan position 107. Catat nilai tersebut, karena anda
akan membutuhkannya nanti ketika mensetting konfigurasi pada
server slave. Nama file binlog dan posisi tersebut dibutuhkan slave
sebagai informasi dimana slave akan memulai memproses update
terbaru pada master.
Ketika memilih database yang akan disertakan pada dump, anda harus
memfilter database pada masing-masing slave yang tidak akan anda
sertakan pada proses replikasi.
Contoh:
Setelah itu anda dapat mengeksekusi statement SHOW SLAVE STATUS
untuk melihat status proses replikasi yang sedang berjalan pada slave.
master-host=10.10.1.20
master-user=slaveuser
master-password=slave
master-connect-retry=60
replicate-do-db=test
relay-log = C:/mysql/log/slave-relay.log
relay-log-index = C:/mysql/log/slave-relay-log.index