标签:postgres -- 备份 time 数据库 sh Linux dbname
一。创建脚本
编写数据库定时备份脚本 脚本语句如下:
命名为:pgback.sh
#!/bin/bash
export PGPASSWORD='123456' #数据库密码
export dbname=dbname # 数据库库名
backuppath=/var/lib/pgsql/9.6/backups #备份保存的路径
echo "开始执行 PostgreSql 数据库的备份!"
echo "backup ing -------------------"
# 获取当前时间
cur_time=$(date '+%Y-%m-%d')
sevendays_time=$(date -d -7days '+%Y-%m-%d')
rm -f $backuppath/${dbname}$sevendays_time.bak #删除7天前的备份
pg_dump --port 5432 --username "postgres" --no-password --format custom --blobs --verbose --file "$backuppath/${dbname}$cur_time.bak" "${dbname}"
echo "数据库备份结束!"
exit;
二。给文件权限
chmod +x pgback.sh
三。测试脚本
sh pgback.sh
四。定时任务
crontab -e
设置每天晚上23点执行脚本,并输出到日志,路径可自行更改
0 23 * * * sh /home/pgsql/backups/pgback.sh > /home/pgsql/backups/bak.log 2>&1
标签:postgres,--,备份,time,数据库,sh,Linux,dbname 来源: https://www.cnblogs.com/tangtuzi/p/16071413.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。