Резервное копирование.

Для создания бэкапов базы данных перед обновлением можно использовать несколько способов:

  • Создание бэкапа с помощью скрипта ./dump.sh входящим в комплект поставки. Для этого выполните скрипт dump.sh. Данный скрип создаст бэкап базы данных на текущий момент в директории /opt/dppm/postgres_dump:
./dump.sh -p /opt/dppm/postgres_dump

register image

  • Создание бэкапа встроенными средствами Для этого переходим в директорию /opt/dppm/postges_dump (создаём, если её не существует) и выполняем следующую команду:
docker exec postgres /bin/bash -c "export PGPASSWORD=planr && pg_dump -U planr planr" | gzip -9 > planr_latest.sql.gz

ls -lha

register image

Настройка бекапов по расписанию

Для созданию бекапов по расписанию необходимо добавить скрипт dump.sh в таблицу исполнения скриптов по расписанию crontab. Параметры запуска скрипта можно посмотреть, выполнив ./dump.sh -h.

register image

Пример использования скрипта в crontab приведен ниже. В данном случае скрипт выполняется каждую ночь в 3:00, делает бэкап в директорию /opt/dppm/postgres_dump/ с периодом ротации 14 (Это означает что в папке всегда будет хранится 14 актуальных бэкапов) и количеством файлов, которые не удалятся в любом случаи – 5.

register image

Восстановление базы данных из бекапа

Для восстановления базы данных из бэкапа используем скрипт ./restore.sh. Пример использования скрипта по восстановлению базы данных из бэкапа представлен на рисунке ниже.

register image