您的位置:首页 > 运维架构 > Linux

linux系统pgsql数据库定时备份失败问题

2018-01-24 16:28 239 查看
备份脚本贴上如下

OUT_DIR=/usr/local/DB_BK
LINUX_USER=root
DB_NAME=数据库名
DB_USER=数据库用户名
DAYS=20
cd $OUT_DIR
DATE=`date +%Y_%m_%d`
OUT_SQL="$DATE.sql"
TAR_SQL="备份脚本名$DATE.tar.gz"
pg_dump -U $DB_USER -p 65442 -T t_biz_log $DB_NAME > $OUT_SQL
tar -czf $TAR_SQL ./$OUT_SQL
rm $OUT_SQL
chown $LINUX_USER:$LINUX_USER $OUT_DIR/$TAR_SQL
find $OUT_DIR -name "备份了脚本名_*" -type f -mtime +$DAYS -exec rm {} \;
deldate=` date -d -20day +%Y_%m_%d `
ftp -n<<!
open ftp地址 21
user mysqlbk mysqlbk
binary
cd CENTER
lcd /usr/local/DB_BK
prompt
put 备份脚本名__bak_$DATE.tar.gz 备份脚本名__bak_$DATE.tar.gz
delete 备份脚本名__bak_$deldate.tar.gz 备份脚本名__bak_$deldate.tar.gz
close
bye
!进入/etc修改crontab文件启动守护定时进程
 42 15 * * * root /usr/local/DB_BK/db_u.sh //脚本路径和执行时间

因为crontab中环境变量是(/usr/bin:/bin),非此目录下的命令都无法识别,所以要在/usr/bin下执行如下命令
ln -s /usr/local/pgsql/bin/pg_dump (后面路径为pgsql路径pg_dump命令路径)

注意:同一个数据库我设置同一时间备份,然后备份数据重叠了........改为不同时间后成功。
ln命令为建立一个可以执行的链接命令,让crontab守护进程可以执行。
如果链接过来是红色闪烁的说明是无效的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: