Потоковая репликация - запутывающая копия? - PullRequest
0 голосов
/ 02 мая 2011

Я хотел бы использовать потоковую репликацию в PG9 для QA, то есть передавать данные из производства в QA. Предостережение: мне нужно запутать данные в QA (изменить хэши паролей, электронные письма и т. Д.).

Возможно ли добиться этого с помощью потоковой репликации? Если нет, есть ли альтернативы для инкрементного обновления с запутыванием на лету?

Ответы [ 2 ]

0 голосов
/ 30 мая 2016

Четкий и короткий ответ: НЕТ.

В PostgreSQL встроенный мастер репликации потоковой передачи и ведомый должны быть идентичны . Вы не только не можете изменить отдельные записи и поля, но также вы не можете изменить количество баз данных, например. Полный «кластер базы данных» с главного устройства (со всеми его базами данных, таблицами и данными) будет скопирован на ведомое устройство.

Что вам действительно нужно, так это какая-то логическая репликация на основе триггера. Я слышал, что pglink может это сделать, но я никогда не пробовал.

0 голосов
/ 03 мая 2011

Я думаю, тебе, вероятно, придется здесь что-то свое сделать. Что бы я сделал, это установил триггер на реальной таблице, который помещает запутанное / произвольное значение вместо таких вещей и помещает их в таблицу с тем же именем в альтернативной схеме. тогда я бы повторил БД, с теми таблицами, замененными оригиналами. Таким образом, безопасные данные не покидают производство, и вы можете использовать встроенный механизм репликации (slony), не катя все самостоятельно. Если вам нужна помощь по slony, перейдите к руководству администратора slony, чтобы начать. Это кажется действительно сложным, но это не так уж плохо, и как только вы освоите его, вы сможете сделать с ним действительно классные и удивительные вещи.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...