Почему вы хотите разделить базы данных?
То, как работает PITR, невозможно, поскольку он работает на всем кластере.
В этом случае вы можете создать каталог данных и отдельный кластер для каждой из этих баз данных (хотя и не рекомендуется, поскольку для этого потребуются разные порты и экземпляры postmaster).
Я полагаю, что преимущества использования PITR вместо обычных дампов перевешивают наличие отдельных резервных копий для каждой базы данных, поэтому, возможно, вы сможете переосмыслить причины, по которым вам нужно разделить его.
Другим способом может быть настройка репликации с помощью Slony-I , но для этого потребуется отдельный компьютер (или экземпляр), который получает данные. С другой стороны, таким образом вы получите реплицированную систему практически в реальном времени.
Обновление для комментария:
Чтобы исправить ошибки, такие как удаление таблицы, PITR был бы идеальным вариантом, поскольку вы можете воспроизводить их в определенное время. Тем не менее, для 500 баз данных я понимаю, что это может быть много накладных расходов. Slony-я бы наверное не работал, так как это тиражирование. Не уверен, как он обрабатывает удаление таблиц.
Я не знаю ни о каких других путях, по которым вы можете идти. То, что я сделал бы, вероятно, все еще будет идти на PITR и просто не делать никаких ошибок;). Помимо шуток, в зависимости от того, как часто допускаются ошибки, это может быть решением:
- Установите его для PITR
- второй экземпляр готов в режиме ожидания.
- Если произошла ошибка, воспроизведите восстановление к моменту времени во втором экземпляре.
- Выполните pg_dump для уязвимой базы данных из этого экземпляра.
- Создайте pg_restore в производственном экземпляре для этой базы данных.
Однако для этого потребуется, чтобы у вас был готов второй экземпляр, либо на том же сервере, либо на другом (рекомендуется другой). Кроме того, время восстановления будет немного больше, поскольку вам потребуется сделать один дополнительный дамп и восстановить.