Постгресово-бэкапное
Mar. 30th, 2026 10:28 pm... Всю жизнь (точнее, последние шесть лет, бггг) бэкапил PostgreSQL тупо самописными скриптами с pg_basebackup внтури. Теперь подумал, что надо бы какое-нибудь более-менее "user-friendly" решение прикрутить. Стал искать-выбирать. И чё-то как-то всё грустно.
Что есть "из классики".
- Barman. Неплохо, но под капотом всякие voodoo в виде жестких ссылок (hard links) и rsync-а чтобы забирать WAL-ы. От безысходности я конечно подпишусь на такое, но хотелось бы всё же без хардкора. Из плюсов: изначально годится на бэкап нескольких серверов / кластеров, что мне актуально.
- pg_probackup. Платная. В community-версии самого вкусного нет, и поговаривают что к следующим релизам её вообще забросят.
- PgBackRest. Питонописная, плюс к ней можно прикрутить отдельную (3rd party) веб-морду. Недостатка по сути два. Под каждый сервер нужно создавать отдельный репозиторий, конфигурационный файл раздувается пропорционально. И WAL-ы умеет только push-ить при помощи archive_command. То есть нужно давать возможность писать с "основного" PG-сервера на бэкапный. Плохо тем, что если потенциальный злоумышленник получает доступ к БД, то к бэкапам автоматически тоже.
- WAL-G. Отсутствие документации, Goписьный быдлокод, нет проверки консистентности инкрементных бэкапов, заточенность под облака.
- pg_rman. Это скорее эдакий сильно продвинутый pg_basebackup на стероидах, нежели полноценная система управления бэкапами. Плюс под разные версии Postgres-а нужно держать разные версии бинарников pg_rman-а. А в пределах технической площадки постгресы могут быть ой разношерстными.
- pgmoneta. Удивительно, что в 2025-м году кто-то ещё пишет на "сях". Присматриваюсь, но у неё не очень удобный CLI, и она не очень заточена под бэкап пачки разношерстных серверов.
- databasus. Смущает, что написана совсем недавно автором из одной соседней страны, не совсем ясен процент вайб-кода в оной. Привлекает наличие веб-морды, но отпугивает какая-то нездоровая заточенность под запуск в Docker-е. Ну не хочу я доцкер в прод тащить, не нужен он мне там. Можно конечно расковырять и пересобрать из исходников, но на это всё нужно время.
Вот сижу всё и думаю чего бы взять. В одном инструменте не нравится одно, в другом другое.
... Среди GUI-клиентов тоже как-то всё грустно. HeidiSQL чисто под винду. Есть сборка под линукс, но она какая-то вся кривая. Antares у меня не завелся. Ну как "не завелся", таблицы видит, редактировать не дает. Вываливает какую-то мутную ошибку. DBeaver вполне ок, но он тяжелый, Javaписьный, дико перегруженный интерфейс, куча функций которая мне реально не нужна. Эдакий трактор, когда мне нужен просто мотокультиватор.
... Опытным путём выяснил, что ТЬФУ не пропускают даже вполне себе "законный" трафик (например, согласованный по челобитной) если "туда" и "обратно" он идет разными путями. То есть когда ТЬФУ видит пакеты в обе стороны, то переходит на следующую ступень и начинает анализировать сигнатуры протокола и "белые списки". Если же оно не понимает что это за протокол, то пропускает первые 16 килобайт, а дальше начинает дропать всё подряд. На этом фоне собственная PI AS становится скорее вредна, чем полезна.
Всем своевременных рабочих бэкапов и удобных GUI-клиентов.