Резервное копирование PostgreSQL. Бэкап базы PostgreSQL. Восстановление PostgreSQL.

Резервное копирование баз данных PostgreSQL. Как сделать автоматический бэкап PostgreSQL с помощью Bacula? Восстановление PostgreSQL.

Резервное копирование PostgreSQL с помощью утилиты Bacula существенно упрощает и ускоряет процесс создания бэкапа базы PostgreSQL. При этом администратору не нужно обладать знаниями внутренних компонентов PostgreSQL для резервного копирования баз PostgreSQL и их восстановления и необязательно владеть навыками написания сложных скриптов резервного копирования PostgreSQL.

Бэкап PostgreSQL с помощью Bacula имеет широкую применимость. Bacula Enterprise Edition позволяет производить бэкап PostgreSQL на Windows, поскольку имеет соответствующий агент. С помощью данной утилиты также возможно резервное копирование базы 1С на PostgreSQL.

Утилита для создания бэкапов PostgreSQL автоматически создает резервную копию всей важной информации, например, конфигураций, определений пользователей, таблиц. Утилита для создания бэкапов базы PostgreSQL поддерживает технологию резервного копирования и восстановления PostgreSQL из дампа, а также технологию восстановления базы PostgreSQL из бэкапа до заданной контрольной точки.

Резервное копирование PostgreSQL с Bacula. Бэкап базы PostgreSQL.

Ключевые преимущества резервного копирования и восстановления PostgreSQL с Bacula:

  • Возможность создания бэкапов и восстановления базы PostgreSQL с помощью дампов, а также поддержка технологии восстановления PostgreSQL до заданной контрольной точки (PITR)
  • В режиме восстановления PostegreSQL до заданной контрольной точки (PITR), утилита поддерживает создание как инкрементальных, так и дифференциальных бэкапов PostgreSQL
  • Утилита для бэкапа PostgreSQL автоматически запускает процедуру резервного копирования важной информации, такой как информация о конфигурации БД, определения пользователей, или табличные пространства
  • Резервное копирование PostgreSQL работает с базами 1С

Как сделать бэкап PostgreSQL: PITR или Dump? 

  Custom Dump PITR
Возможность восстанавливать отдельные объекты PostgreSQL (таблица, схема ) Да Нет Нет
Скорость резервного копирования PostgreSQL Медленно Медленно Быстро
Скорость восстановления PostgreSQL  Медленно Очень Медленно Быстро
Размер бэкапа PostgreSQL Маленькая Маленькая Большая
Возможность восстановления PostgreSQL в любой точке времени Нет Нет Да
Инкриментальные/Дифференциальные резервные копии PostgreSQL Нет Нет Да
Резервное копирование PostgreSQL без остановки базы данных Да Да Да
Консистентность бэкапа PostgreSQL Да Да Да
Возможность восстановления на предыдущую версию PostgreSQL Нет Да Да
Возможность восстановления на более новую версию PostgreSQL Да Да Нет

Чаще всего режимы резервного копирования баз PostgreSQL через Dump и PITR комбинируют.

Уровни резервного копирования PostgreSQL в PITR

Когда при бэкапе базы данных PostgreSQL используется режим PITR, при разных уровнях копирования (инкрементальный, дифференциальный, полный) будут выполнены следующие действия:

  • При полном резервном копировании базы PostgreSQL плагин сделает полную резервную копию директории data и всех WAL файлов, которые есть на данный момент;
  • При инкрементальном резервном копировании PostgreSQL будет переведен на новый WAL файл и будут сделаны резервные копии всех WAL файлов, которые были созданы с момента последнего резервного копирования баз данных PostgreSQL
  • При дифференциальном бэкапе PostgreSQL будет сделана резервная копия всех WAL файлов и файлов data с момента последнего бэкапа PostgreSQL

Резервное копирование PostgreSQL в режиме Dump

Плагин для резервного копирования баз PostgreSQL генерирует следующие файлы в резервной копии для одной базы “test”:

@PG/main/roles.sql
@PG/main/postgresql.conf
@PG/main/pg_hba.conf
@PG/main/pg_ident.conf
@PG/main/tablespaces.sql
@PG/main/test/createdb.sql
@PG/main/test/schema.sql
@PG/main/test/data.sqlc
Файл Контекст Коммент
roles.sql Глобальный Список всех пользователей, их паролей и остальных опция
postgresql.conf Глобальный PostgreSQL конфигурация кластера
pg_hba.conf Глобальный Конфигурация подключений клиентов
pg_ident.conf Глобальный Конфигурация подключений клиентов
tablespaces.sql Глобальный Конфигураця TableSpace
createdb.sql База данных Скрипт создания базы данных
schema.sql База данных Схема Базы данных
data.sqlc База данных Дамп базы данных в формате “custom”(содержит все, что необходимо для восстановления)
data.sql База данных Резервная копия база данных в формате dump

Автоматическое резервное копирование баз PostgreSQL доступно на всех 32/64-разрядных платформах Linux:

  • CentOS5/6/7
  • Redhat 5/6/7
  • Ubuntu LTS
  • Debian Squeeze
  • Suse 11

Резервное копирование PostgreSQL запускается вместе с ПО Bacula Enterprise версии 6.0.6 или выше и поддерживает резервное копирование БД PostgreSQL версий 8.x, 9.0.x и 9.1.x..