Нужно несколько раз в день, делать бэкап PostgreSQL базы (размер данных около 1 Гб.). pg_dump[all] слишком долго выполняется и при этом сервер ощутимо тормозит.
Готовых решений для горячего бэкапа pgsql не нашел, поэтому думаю применить следующую методику:
while (перебираем все таблицы){
Ставим эксклюзивный лок на таблицу
Копируем все файлы этой таблицы и индексы.
Снимаем лок.
}
Насколько такая схема оправдана, не будет ли проблем ? Слишком просто все
получается.
Другая идея - реплицировать данные на второй сервер, но чувствую что проблем здесь будет горяздо больше, и не только с надежностью, но и с быстродействием.