Даже если база данных размещена на RAID-массиве, вам следует организовать резервное копирование информации. Желательно осуществлять его на независимое и физически удалённое от сервера хранилище.
За основу вы можете взять наш собственный скрипт резервного копирования:
#!/bin/bash
BAK_PATH=/media/sdb1
VER=date +'%F_%H.%M'
outGlob=$BAK_PATH/$VER.global.bak
outLoc=$BAK_PATH/$VER.memoria.bak
sudo -u postgres -- pg_dumpall -U sa -g -f "$outGlob"
if [ $? != 0 ];then exit $?;fi;
sudo -u postgres -- pg_dump -U sa -f "$outLoc" -F c memoria
if [ $? != 0 ];then exit $?;fi;
find $BAK_PATH -type f \! -newermt '1 month ago' -exec rm {} \;
Данный скрипт создает наборы независимых резервных копий с датой создания, закодированной в имени файла, причем копии старше месяца удаляются.
Для корректной работы скрипта необходимо, чтобы была разрешена аутентификация в БД без пароля с локального компьютера (см. настройку pg_hba.conf в разделе «Запуск и конфигурирование сервера БД»).
Этот скрипт необходимо запускать периодически. Например, в Linux соответствующие настройки в /etc/crontab могут иметь вид:
0 */4 * * * root /usr/local/bin/memo_back
(выполняется запуск скрипта каждые четыре часа).
Примечание
В случае ОС Windows вам понадобится переделать скрипт и воспользоваться службой планировщика заданий (Task Scheduler) для его периодического запуска.