Kami terus-menerus menangani ini di kantor, dan pertanyaannya terus muncul. Bagaimana Anda menangani replikasi PostgreSQL? Saya bahkan tidak perlu berbicara tentang cluster maju, hanya membuatnya sederhana dengan Master-Slave, Master-MultiSlave, dan Master-Master. Saya menemukan bahwa pengaturannya untuk MySQL biasanya cukup sederhana. Kegagalan mudah jika tidak sempurna, terutama untuk betapa mudahnya untuk mengkonfigurasi. Kami telah bermain dengan Slony, tapi agak terlalu praktis (perubahan skema memerlukan intervensi, database baru memerlukan intervensi, dll). PGPool2 cukup bagus, sampai sebuah node turun dan kami tidak dapat menemukan cara yang anggun (selain membawa semuanya ke bawah dan me-reseeding node yang jatuh) untuk mendapatkan replikasi kembali dalam sinkronisasi. Pada dasarnya inilah yang biasanya saya cari:
- Pengaturan mudah (saya akan puas dengan pengaturan sulit, tetapi mudah diperluas)
- Kegagalan sederhana
- Membawa simpul yang jatuh kembali hanya membutuhkan waktu (yaitu seperti mysql. Server turun, Anda membawanya ke atas, dan menunggu replikasi untuk mengejar ketinggalan)
- Perubahan skema tidak merusak replikasi
- Menambahkan database baru ke server mulus (mis. Seperti mysql, Anda dapat mereplikasi seluruh server DB, sehingga database baru dibuat pada master, secara otomatis menyebar ke slave)
MySQL menangani sebagian besar dari ini dengan cukup baik, tetapi saya memiliki kesukaan tertentu untuk PostgreSQL. Selain itu, kami memiliki beberapa situasi di mana itu adalah satu-satunya pilihan kami, dan kami ingin menambahkan replikasi ke dalam campuran. Apa yang Anda gunakan saat ini, dan bagaimana perasaan Anda tentang solusi Anda? Saya berjanji, ini bukan postingan MySQL versus PostgreSQL, karena bukan itu yang saya coba untuk mulai. :)