Автоматическое создание резервных копий схем БД для PostgreSQL

Автоматическое создание резервных копий схем БД осуществляется с помощью утилиты «pg_restore», которая восстанавливает БД PostgreSQL из файла архива, созданного командой «pg_dump».

Выполнение резервного копирования проходит согласно следующему алгоритму:

  1. создайте каталог, в котором будут храниться файлы архивов схемы;

  2. создайте исполняемый файл с расширением .cmd или .bat, который содержит название конфигурационных файлов, подлежащих резервированию;

  3. создайте конфигурационный файл с расширением .bat, в котором укажите конфигурация резервируемого файла, например:

    For /f "tokens=1,2,3,4,5 delims=/. " %%a in ('date/T') do set nowdate=%%d-%%b-%%c
    SET PGBIN=C:\PostgreSQL\9.5\bin
    SET PGDATABASE=имяБазыДанных
    SET PGHOST=IPАдресСервераБазыДанных
    SET PGPORT=ПортСервераБазыДанных
    SET PGUSER=ИмяПользователяСполнымиПравами
    SET PGPASSWORD=ПарольОтПользователя
    
    cd /d C:\PostgreSQL\9.5\bin
    pg_dump.exe --host localhost --port 5432 --username "postgres" --role "postgres" --no-password  --format custom --blobs --verbose --file "C:\AUTODUMPS\Manual\date-ИмяБазыДанных.backup" "ИмяБазыДанных"
    forfiles /P E:\AUTODUMPS\Postgres\TEST\ /M *.backup /D -3 -S /C "cmd /C del @file /q"
  4. для периодического вызова утилиты создайте новое задание. Для этого нажатием на кнопку панели меню «Пуск» вызовите следующие пункты меню «Панель Управления/ Администрирование/ Планирование заданий (Планировщик заданий)». Добавьте новое задание и в качестве исполняемого файла добавьте, например, «backup.cmd», после чего назначьте время для его исполнения и периодичность.