к чему этот огород, если постгре умеет в несколько баз.
Умеет. Но у них общий wal
Это я и спрашивал. То есть, мне надо делать отдельные дампы каждой базы, а вал архивировать один на всех... Всё ещё сильней запуталось. Хотел спросить, как восстанавливать конкретную базу на момент времени, а не весь сервер целиком. Или как выдирать конкретную таблицу на момент времени. И уже есть сомнения, что такое вообще возможно.
Валы не накатываются на дампы.
pg_probackup может восстанавливать конкретную базу на конкретное время. Но как правильно ответили выше, он оперирует не дампами, а бинарными копиями
То есть, вал — это для восстановления сервера в целом, без разбивки на базы, таблицы и пр.?
Обычно под дампом голый SQL подразумевают.
Это транзакционный лог.
Вал — это для работы с физическими копиями, дамп делает логическую.
И как на этот "ясен пень" вал накатывать?
Ещё непонятней. Физически у меня железный сервер. Всё остальное в нём (ось, субд, базы в субд) — голимая логика.
Забцжьте про сервер
И как к приложению приложить физику, мне решительно непонятно.
Копия файлов - физическая копия. Дамп в SQL запросы - логическая
Это тожэ местеая терминология. Бэкапы тут бывают логические (pg_dump) и физические (pg_basebackup, rsync, и примерно вме остальные внешние тулзы архивирования).
Как из коллекции вал-файлов полностью восстановить данные с другого сервера, которого больше нет?
Без понятия. Восстановление холодного кластера я делаю из архивов pg probackup. Горячий у меня всегда жив через replication slot
replication slot — это ведь про наличие второго "железного" сервера с постгресом?
Да, с физической копией.
Он может быть где угодно. В том числе в соседнем каталоге. Но обычно да, на другой виртуалке
Никак. Для восстановления по WAL требуется физическая копия базы на какой-то момент, с которого есть все WAL в коллекцыи.
Вот тут ответ на ваш вопрос. @tzirechnoy
Вот это и интересно. Вот если, например... 1. Восстанавливаем (одну) базу из дампа, допустим, за вчерашний день. 2. Делаем реплей из кучи вал-файлов за вчера же. При этом база будет актуализирована до последней транзакции, НО! другие базы тоже будут затронуты, верно?
Ладно, я ужэ трижды повторил, что валы не накатываются на дампы -- большэ не буду. Видимо как-то не так говорю.
Ну, скажем так, за ваши деньги - любой каприз. Но это будет очень дорого.
А на что они накатываются?
На физические бэкапы.
А это дампы pg_dump_all?
Нет, pg_dumpall -- это тожэ логическая копия. Снапшоты fs подходят. А такжэ все спецыальные инструменты для снятия физических копий -- pg_basebackup, pgprobackup, wal-g, ...
Так, не нужно про снапшоты. Неподготовленного человека в заблуждение введешь!
Почему? Тем более, что как раз это он вроде знает (удобно будет привязывать к существующей системе понятий).
За pg_[base|pro]backup и wal-g большое спасибо, буду вникать.
Обсуждают сегодня