Восстановление БД PG SQL

/ Просмотров: 2092
Восстановление БД PG SQL

Скрипт берет последний бэкап из указанной директории и восстанавливает его в тестовую базу данных.

#!/bin/bash
# Скрипт запуска восстановления БД 1С в тестовую базу umkptest
BACKUPDIR=/mnt/backup/1S/base # Директория хранения бэкапов
LOGFILE=/var/log/Backup1S.log # Хранилище лог-файлов
echo "Восстановление БД umkptest начато: `date +%Y.%m.%d-%H:%M:%S`" >> $LOGFILE
cd $BACKUPDIR
for i in $(ls -tr $BACKUPDIR/*.bkp);
do
  ARH_FILE=$i; #последний файл
done
echo "Восстанавливаем данные из файла " $ARH_FILE >> $LOGFILE
PGPASSWORD="password" dropdb --host 127.0.0.1 --port 5432 --username "user" --no-password "basename" --if-exists
PGPASSWORD="password" createdb --host 127.0.0.1 --port 5432 --username "user" "basename" --no-password
PGPASSWORD="password" pg_restore --host 127.0.0.1 --port 5432 --username "user" --dbname "basename" --clean --no-password "$ARH_FILE"
echo "Восстановление БД umkptest завершено: `date +%Y.%m.%d-%H:%M:%S`" >> $LOGFILE
####LAST LINE. DO NOT REMOVE####