用于创建 postgresql 数据库的自动备份
在home目录下创建一个文件夹
mkdir database_backup
2.新建文件
nano pg-backup.sh
在该文件中写入此代码
#enable this option, if you are creating hourly backup
if [ ! -d "$2/`date +%F-%H`" ]; then
mkdir $2/`date +%F-%H`
pg_dump $1 > $2/`date +%F-%H`/$1.sql
else
echo "Do not run this script manually !"
fi
#enable this option, if you are creating daily backup
if [ ! -d "$2/`date +%F`" ]; then
mkdir $2/`date +%F`
pg_dump $1 > $2/`date +%F`/$1.sql
else
echo "Do not run this script manually !"
fi
现在运行这个命令
chmod 755 pg_backup.sh
现在运行此命令进行每小时备份
sudo crontab -e
添加这一行
@hourly /home/openerp/database_backup/pg_backup.sh database_name /home/openerp/database_backup/
用于创建每日备份
您可以使用以下命令创建每日备份
sudo crontab -e
将以下行添加到该编辑过的文件并保存。
@daily /home/openerp/database_backup/pg_backup.sh database_name /home/openerp/database_backup/
要执行此操作,您应该在 postgresql 数据库下创建 root 用户现在如果您想将数据库恢复到 openerp
使用 postgres 用户登录,然后运行此命令
psql -username <openerp_database_user> -dbname <New_database_name> -f <path_of_backuped_.sql_file>