TGViewer
Сетевик Джонни // Network Admin Сетевик Джонни // Network Admin @iscode · 5.79K subscribers
Post #1075 3.08K
🥷 Резервное копирование PostgreSQL по-взрослому: форматы дампов

Ради этого мы тут все и собрались. Давайте погрузимся в возможности резервных копий. До этого вы могли наблюдать непонятный ключ -F, который позволяет указать формат. Всего в PostgreSQL есть 4 формата:
— plain (стандартный)
— custom
— tar
— dir

❗️ Теперь хочется познакомиться с каждым поближе, но перед этим обсудим одну очень важную для понимания разницы между форматами вещь — TOC.

TOC — Table of Contents, оглавление резервной копии, которое отражает, какой контент содержится в дампе, в каком порядке его нужно восстанавливать и какие есть зависимости между объектами.


1. Plain (текстовый SQL-файл)
Особенности:
— Текстовый формат, редактируемый и читаемый.
— Нет сжатия, выборочного восстановления и параллельной обработки.

pg_dump -Fp demo -f demo-plain

Результат:
Размер: ~888 МБ для БД 2.5 ГБ.
Время создания: ~8 сек.

2. Custom (бинарный формат с TOC)
Особенности:
— Сжатие, выборочное восстановление через pg_restore, параллельное восстановление.
— Нечитаемый формат без восстановления.

pg_dump -Fc demo -f demo.dump

Результат:
Размер: ~233 МБ.
Время создания: ~37 сек.

3. Tar (архив с SQL и данными)
Особенности:
— Удобен для транспортировки.
— Нет сжатия и параллельной работы, но есть выборочное восстановление.

pg_dump -Ft demo -f demo-tar

Результат:
Размер: ~888 МБ.
Время создания: ~11 сек.

4. Dir (каталог со сжатыми файлами)
Особенности:
— Параллельные дамп/восстановление (-j N), сжатие, высокая скорость для больших БД.
— Неудобен для ручного управления.

pg_dump -Fd demo -j 5 -f demo-dir-5

Результат:
Размер: ~233 МБ.
Время создания: ~18 сек (с 5 потоками).

🕹 Когда что использовать?
Plain
— миграция между СУБД, ручное редактирование дампа.
Custom — регулярные бэкапы с минимизацией места.
Tar — резервирование с возможностью извлечения файлов без pg_restore.
Dir — большие БД, требующие скорости

@postgresql | 😊 @iscode
  • 👍 16
  • 🔥 3
  • ⚡ 2
More from @iscode
  1. Oct 1, 2026🥷 Подключилось новое устройство. Назвалось «принтер_бухгалтерия». IP свободный, MAC похож…
  2. Oct 1, 2026🎇Главная идея DevSecOps: безопасность перестаёт тормозить разработку. Вместо проверок «по…
  3. Sep 29, 2026Заморочились 😀
  4. Sep 28, 202622 октября встречаемся в Москве: Kuber Conf уже совсем скоро! Что будет на конференции: –…
  5. Aug 23, 2026🥸 OWASP Agentic Skills Top 10: критические уязвимости при работе с агентами Свежак от OWA…
  6. Aug 8, 2026Технологический радар и принятие изменений Когда вы уже достаточно выросли из штанишек и к…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →