Пытаюсь понять, как из консоли правильно делать бекапы и восстанавливать из них. Курю вот такие косяки, но ничего не вкуривается...
Скрипт бекапа написал такой:
#/bin/bash
date=`date +'%Y-%m-%d-%H-%M-%S'`
pg_dump -O -Fc -h localhost -U postgres mg > mg_$date.pgsq
А вот с восстановлением - тупак :(
#/bin/bash
if [[ -z $1 || -z $2 ]]; then
echo "./restore DATABASE FILE"
exit
fi
date=`date +'%Y %b %d - %H:%M:$S'`
echo "\n\n[$date]\n" >> restore.log
pg_restore -C -d $1 -e -Fc -O -h localhost -U postgres $2 >> restore.log
Никак не могу подобрать параметры для pg_restore
1) pg_restore -C -d $1 - говорит, что база уже есть
2) pg_restore -c -d $1 - говорит, что схема не найдена
3) если удалить базу перед выполнением и сделать -C -d $1 - говорит, что не удается подключиться к базе (естественно, ее же нет!)
Подскажите, как восстановить базу, пожалуйста.
Перемещено beastie из general