Saya sedang dalam proses memigrasi 2 server DB (Master & Slave) ke dua Server DB baru (Master dan Slave)
DB1 - Master (produksi)
DB2 - Budak (produksi)
DB3 - Master Baru
DB4 - Budak Baru
Saat ini saya memiliki replikasi yang diatur sebagai:
DB1 -> DB2
DB3 -> DB4
Untuk mendapatkan data produksi direplikasi ke server baru, saya ingin mendapatkannya "daisy dirantai" sehingga terlihat seperti ini:
DB1 -> DB2 -> DB3 -> DB4
Apakah ini mungkin? Ketika saya menjalankan show master status;
pada DB2 (budak produksi) kepemilikan binlog sepertinya tidak pernah berubah:
+ ------------------ + ---------- + -------------- + ---- -------------- + | File | Posisi | Binlog_Do_DB | Binlog_Ignore_DB | + ------------------ + ---------- + -------------- + ---- -------------- + | mysql-bin.000020 | 98 | | | + ------------------ + ---------- + -------------- + ---- -------------- +
Saya agak bingung mengapa posisi binlog tidak berubah pada DB2, Idealnya itu akan menjadi master untuk DB3.
sumber
Ya, itu mungkin :) Ini disebut replikasi "Master with Relay Slave" dan ada banyak dokumen tentang itu di internet.
Saya sarankan Anda untuk melihat dokumentasi resmi di sini .
Btw, lihat juga slide ini . Mereka memiliki beberapa petunjuk tentang topologi replikasi.
Semoga ini membantu.
sumber
ya - Anda dapat daisy-chain server mysql, Anda bahkan dapat membuat replikasi melingkar dengan dua atau lebih mesin di dalamnya. hanya ingat untuk mengaktifkan binloging pada slave yang juga bertindak sebagai master.
sumber
Ya itu mungkin. Secara realistis, Anda memerlukan snapshot baru DB2 untuk membangun DB3. Pada titik itu, jika Anda memiliki posisi yang baik, Anda dapat menggunakan selain untuk DB4 atau mengambil snapshot lain dari DB3.
Jangan lupa untuk mengatur unik
server_id
untuk setiap server.Kinerja Tinggi MySQL adalah buku yang bagus untuk referensi administrasi MySQL yang lebih maju.
sumber
Mengapa tidak menambahkan DB3 sebagai budak baru, dan kemudian mempromosikannya ke master ketika Anda siap untuk beralih? Ini akan memberi Anda manfaat tambahan sementara dari memiliki banyak budak, dan mengurangi atau menghilangkan waktu henti Anda.
sumber