RHEL5下postgresql自动备份(无须手动输入密码)
2010-12-09 14:40
363 查看
网上有很多方式,最后觉得采用密码文件的方式比较好。
1:在/home/postgres目录下创建.pgpass文件
内容如下:
localhost:5432:*:postgres:password
2:编写备份脚本
dbbackupcron.sh
#!/bin/sh
bak_dir="/home/backupfiles/db"
#date_dir=`date +%Y/%m/%d/%H`
date_dir=`date +%Y/%m/%d`
/bin/mkdir -p ${bak_dir}/${date_dir} > /dev/null 2>&1
su postgres -c "/usr/local/pgsql/bin/pg_dump ue_dev > ${bak_dir}/${date_dir}/"ue_dev.dump
cd ${bak_dir}/${date_dir}
tar czf ue_dev.tar ue_dev.dump
gzip ue_dev.tar
rm -rf ${bak_dir}/${date_dir}/ue_dev.dump
上面脚本在执行数据备份的时候是用的postgres用户,而不是root,所以bak_dir必须把权限设置为postgres。
给脚本设置执行权限(上来就777,我知道是臭毛病,恩~)
chmod 777 dbbackupcron.sh
3:用crontab设置定时执行
vi /etc/crontab
添加内容:
10 0 * * * root /home/cron/dbbackupcron.sh
上面脚本是每天00:10执行该脚本,可以根据时间和脚本放置位置自行修改上面的内容。
脚本写的比较稚嫩,但是可以达到效果,各位看客如果有更好希望也提供一下。
1:在/home/postgres目录下创建.pgpass文件
内容如下:
localhost:5432:*:postgres:password
2:编写备份脚本
dbbackupcron.sh
#!/bin/sh
bak_dir="/home/backupfiles/db"
#date_dir=`date +%Y/%m/%d/%H`
date_dir=`date +%Y/%m/%d`
/bin/mkdir -p ${bak_dir}/${date_dir} > /dev/null 2>&1
su postgres -c "/usr/local/pgsql/bin/pg_dump ue_dev > ${bak_dir}/${date_dir}/"ue_dev.dump
cd ${bak_dir}/${date_dir}
tar czf ue_dev.tar ue_dev.dump
gzip ue_dev.tar
rm -rf ${bak_dir}/${date_dir}/ue_dev.dump
上面脚本在执行数据备份的时候是用的postgres用户,而不是root,所以bak_dir必须把权限设置为postgres。
给脚本设置执行权限(上来就777,我知道是臭毛病,恩~)
chmod 777 dbbackupcron.sh
3:用crontab设置定时执行
vi /etc/crontab
添加内容:
10 0 * * * root /home/cron/dbbackupcron.sh
上面脚本是每天00:10执行该脚本,可以根据时间和脚本放置位置自行修改上面的内容。
脚本写的比较稚嫩,但是可以达到效果,各位看客如果有更好希望也提供一下。
相关文章推荐
- RHEL5下postgresql自动备份(无须手动输入密码)
- postgresql在windows下备份的批处理文件(修改版),提示输入密码时,能自动输入密码
- 利用scp自动输入密码进行文件远程拷贝或备份
- 【mysql】备份篇1:使用系统计划任务+mysqldump 定时备份mysql数据库 不用输入密码自动导出sql文件
- RHEL5下RMAN的自动备份
- 利用scp自动输入密码进行文件远程拷贝或备份
- 利用scp自动输入密码进行文件远程拷贝或备份
- 利用scp自动输入密码进行文件远程拷贝或备份
- linux备份和mysql登陆自动输入密码
- 2018-01-15 【postgre】备份数据库和删除固定时间前的备份(无需手动输入密码)
- PostgreSQL 自动输入密码
- PostgreSQL 自动输入密码(转)
- [转载]设置Ubuntu自动连接无线,无须再输入密钥环和无线密码
- postgreSQL 自动备份脚本
- 记住账号密码 (根据输入的账号,密码框自动输入有效密码)
- Shell结合Expect实现自动输入密码
- 以一个例子来讲ubuntu12.04下脚本文件内执行sudo 命令自动输入密码
- 在shell中自动输入密码
- 用 echo 管道命令给sudo自动输入密码
- linux脚本实现scp命令自动输入密码和yes/no等确认信息