0

Perbedaan replikasi master-master dan master-slave pada MySQL

Metode replikasi MySQL.

metode replikasi MySQL

Pada replikasi MySQL, ada 2 istilah:

  • master-master replication
  • master-slave replication

Master-master replication

Adalah 2 atau lebih database utama yang digunakan dan keduanya saling bertukar data sehingga datanya akan sama pada kedua database tersebut.

Mode dari master-master replication ada 2, yaitu active-active dan active-passive.

Mode active-active

Yaitu 2/lebih database master yang aktif saling menerima transaksi (insert, update, delete) dari aplikasi. Bisa dilihat seperti gambar dibawah:

Contoh diatas yaitu master 1 dan mysql 2 sama-sama aktif menerima transaksi dari user. Misalkan user ingin melakukan transaksi dari aplikasi (app), maka dari app meneruskan transaksi tersebut ke master 1 atau master 2.

Kemudian master 1 dan master 2 akan saling bertukar data, master 1 akan mengambil data (binlog) pada master 2, begitu juga sebaliknya. Jadi data pada kedua master tersebut akan sama.

Untuk mengimplementasikan active-active replication ini agak ngeri-ngeri sedap, karena lumayan kompleks konfigurasinya, rentan high latency dan duplicate primary key. Primary key antara master 1 dan master 2 harus berbeda supaya tidak bentrok IDnya.

Mode active-passive

Hanya ada 1 database utama pada mode active-passive, sisanya idle / menunggu. Jika database utama bermasalah / down, database yang idle tersebut bisa di switch (manual/otomatis) menjadi master.

metode replikasi MySQL

Bisa dilihat, master 1 merupakan active artinya bisa digunakan untuk transaksi. Sedangkan master 2 menggunakan mode passive, dimana dia hanya mereplikasi/copy data saja dari master 1.

Jika master 1 mengalami down, master 2 bisa saja dipromote (dipromosikan) menjadi active untuk menghandle transaksi menggantikan master 1 yang down.

Master-slave replication

Adalah 2 atau lebih database, dimana 1 adalah masternya dan 1/lebih adalah slavenya. Master bertindak sebagai database utama untuk menerima transaksi sedangkan slave hanya menyalin data binlog dari master.

Mungkin master-slave replication terdengar hampir sama dengan master-master mode active-passive. Tapi jika dilihat lebih detail, pada master-slave ini, slave tidak bisa menjadi active dan hanya bisa digunakan untuk read data saja (read only). Beda dengan active-passive dimana passive bisa sewaktu-waktu menjadi active.

metode replikasi MySQL

Kesimpulan

  • Master-master replication, dua-duanya merupakan database utama (master)
  • Master-master mode active-active, dua-duanya merupakan database utama (master) yang bisa menerima transaksi dari user
  • Master-master mode active-passive, dua-duanya merupakan database utama (master), namun hanya 1 yang aktif yang bisa menerima transaksi dari user, sisanya passive / idle / menunggu sebagai backup dari database utama jika yang active down
  • Master-slave, 1 merupakan database utama bisa menerima transaksi, 1 merupakan slave (hanya read only saja) tidak bisa menerima transaksi dari user

Ambar Hasbiyatmoko

Hello, I'm web developer. Passionate about programming, web server, and networking.

Leave a Reply

Your email address will not be published. Required fields are marked *

Time limit is exhausted. Please reload the CAPTCHA.