Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > PostgreSQL > Резервное копирование PostgreSQL


Автор: belousov 8.10.2008, 14:57
Доброго времени суток. искал много где так и не нашел того что хотел.

есть СУБД PostgreSQL, надо выполнять полное резервное копирование, дифференциальное и лога по расписанию.

Подскажите как это можно сделать, спасибо!

Автор: Magnifico 8.10.2008, 15:59
http://postgresql.ru.net/manual/wal-intro.html
http://postgresql.ru.net/manual/continuous-archiving.html

http://ru.wikipedia.org/wiki/Cron

Автор: belousov 8.10.2008, 16:16
это я видел. а более человеческого описания нет?

Автор: skif18 16.10.2008, 10:09
belousov, присоединяюсь к вопросу. Есть такая же проблема. Нормально описание под Винду есть?

Автор: belousov 16.10.2008, 10:13
да мне под винду не надо, мне надо под линукс.

мануал одинаковый как под линукс так и под винду. 

проблема в том что в мануале нет ни одного нормального примера. Вот например читаешь MSDN все понятно, т.к. есть примеры. а там примеров нет, одни названия команд, блин.

поэтому и прошу здесь написать..

Напишите маленький пример, как, например, сделать откат назад на некоторое время.... а дальше понятно будет smile 

Автор: belousov 17.10.2008, 22:56
нашел я решение сей проблемы, могу рассказать что и как делать. есть инструкция на англ... могу дать ссылку, а могу в форме статейки подробно рассказать.
если кому надо расскажу. тока попросите

Автор: belousov 18.10.2008, 21:46
Рассказываю.

Рассказываю как архивировать базу данных вместе с логом и откат на нужное время!

Есть англоязычная статейка на эту тему http://www.postgresqlforums.com/wiki/Backup_&_Recovery
я расскажу по русски.

Скачиваем http://pgfoundry.org/frs/?group_id=1000253 скриптик pg_hotbackup. 
Для правильной работы сего скрипта необходимо поставить библиотеки perl-DBI и perl-DBD-Pg

У вас должно работать архивирование WAL. 
Как включить архивирование журнала транзакций. 

В файле postgresql.conf установить параметр
archive_mode = on и убрать знак комментария #

В параметр archive_command вписать путь куда будет сохранятся журнал
например, cp -i %p /mnt/server/archivedir/%f </dev/null
После этого сервер надо перезапустить. Подробнее http://www.postgresql.org/docs/8.2/static/continuous-archiving.html#BACKUP-ARCHIVING-WAL

Действия необходимо производить от пользователя postgres

Запускаем скрипт 
Цитата

pg_hotbackup --backupdir=/var/lib/pgsql/backups --datadir=/var/lib/pgsql/data

где
--backupdir - путь КУДА будет сохраняться дамп.
--datadir - путь ОТКУДА делается дамп

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



Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)