Мы используем тот же сервер PostgreSQL 9.3 как для производства, так и для разработки.PostgreSQL: дублирование базы данных на том же сервере «на лету»
Таким образом, мы хотели бы получить копию существующей производственной базы данных для целей разработки. Если быть точным, все события INSERT/UPDATE/DELETE
, которые приходят в производство, также должны быть помещены в его копию. Обратная репликация не требуется. Как мы можем сделать это?
PS: Пожалуйста, учтите, что полная репликация ведущего-подчиненного не подходит. На данный момент у нас нет возможности развернуть еще один сервер PostgreSQL.
UPD: pg_dump/pg_restore
тоже не так, потому что это приведет к сбою всех обновлений, сделанных разработчиками в их базе данных.
@a_horse_with_no_name, к сожалению, этот подход тоже не подходит, потому что разработчики могут делать некоторые обновления в своей копии. Нам нужно просто дублировать события UPDATE/INSERT, а не развертывать дампы. –
В то же время вы не можете иметь «полную копию существующей производственной базы данных» и «обновления, сделанные разработчиками в своей базе данных». Нет простого способа разрешения конфликтов между обновлениями prod и dev. –
BTW Вы можете проверить postgre BDR: https://wiki.postgresql.org/wiki/BDR_User_Guide Он будет доступен (не очень стабильный) в 9.4 –