PostgreSQL/backupwin

Материал из Etersoft wiki
Перейти к: навигация, поиск
Wackowiki-logo.png Blue Glass Arrow.svg MediaWiki logo.png
Эта страница была автоматически перемещена с old.wiki.etersoft.ru.
Эта страница наверняка требует чистки и улучшения — смело правьте разметку и ссылки.
Просьба по окончанию убрать этот шаблон со страницы.


Создание автоматического бэкапа для PostgreSQL

Для создания единичных дампов есть программа поставляющаяся в комплекте с PostgreSQL pg_dump


Эта инструкция поможет Вам настроить автоматический бэкап на Windows.

Скачайте по ссылке ( ftp://updates.etersoft.ru/pub/Etersoft/Postgre@Etersoft/9.0/Windows/wrappers/pg_createdump.bat ) batch скрипт для создания автоматического дампа

Функции скрипта:

  • создания дампа с именем соответствующим дате создания дампа (bu04052011.sql)
  • удаление старого дампа

Настройте скрипт:


Откройте файл pg_createdump.bat, измените в нем параметры, относящиеся к Вашей версии PostgreSQL

REM path bin postgres

set PATHPOSTGRESBIN=%ProgramFiles(x86)%\PostgreSQL\9.0-eter1\bin


REM path backup

set PATHPOSTGRESBACKUP=C:\dump


REM name dump file

set NAMEPGDUMP=pg_dumpall.exe


REM user database

set USERDATABASE=postgres


REM number day for delete old bachup

set NUMBERDAYBACKUP=3


Где:

PATHPOSTGRESBIN -- путь к программе, которой будут делаться бэкапы (настраивается с помощью NAMEPGDUMP, по умолчанию pg_dumpall)

PATHPOSTGRESBACKUP -- путь к директории, в которую будут делаться бэкапы

NAMEPGDUMP -- программа, которой будут делаться дампы

USERDATABASE -- пользователь бд, от которого будут делаться дампы

NUMBERDAYBACKUP -- количество дней, которые будут храниться бэкапы ( бэкапы сколько дней ранее будут удаляться)


Создайте пользователя Windows, который будет заниматься бэкапами Windows, например bupostgres

Дайте этому пользователю необходимые права на программу, делающую дамп, скрипт pg_createdump.bat, и директорию с дампами


Настройте автоматический запуск pg_createdump.bat с помощью Windows Task Scheduler, от созданного пользователя.


Настройте доступ пользователя postgres ко всем имеющимся базам данных. Это можно сделать следующими способами.


  • Добавить строчку "export PGPASSWORD=mypassword" в pg_createdump.bat