Dari dokumentasi MySQL , ada dua cara untuk menyiapkan arsitektur master-slave. Cara tradisional, menggunakan file log untuk mereplikasi transaksi dan versi baru (5.6+) menggunakan GTID (pengidentifikasi transaksi global).
Jika Anda memilih untuk menggunakan GTID untuk melakukan penanganan failover, Anda akan menggunakan mysqlfailover kegunaan. Utilitas menangani kegagalan master dalam salah satu dari tiga cara yang ditentukan oleh administrator database:
- otomatis (default):Pencarian dilakukan dalam daftar budak yang dipilih untuk menjadi master, jika tidak ada budak lain yang dipilih. Budak yang dipilih pertama-tama menjadi budak bagi semua budak lain dan semua perubahan dari budak lain disalin ke sana, dengan cara ini master baru akan menjadi versi yang paling mutakhir.
- pilih:sama seperti di atas, kecuali jika tidak ada budak dari daftar yang tersedia, ia mengembalikan kesalahan dan selesai (tidak ada kegagalan)
- gagal:Tidak ada kegagalan yang terjadi mysqlfailover hanya akan memantau database dan mengembalikan kesalahan jika terjadi kegagalan.
Cara tradisional mengharuskan Anda menerapkan skrip Anda sendiri ke manajemen basis data dan dijelaskan dengan lebih baik di sini .