策码奔腾

使用shell脚本备份PostgreSql

 

1.备份

  需确保有pgsql的工具pg_dump,--file是存储备份文件的路径, --host --port --username --dbname 是需备份数据库地址、端口、用户名、数据库实例名

#!/bin/bash
echo "开始执行 PostgreSql 数据库dbn的备份"
nowtime=$(date +%F+%T)
export PGPASSWORD=123456
set timeout 1000
/home/user/postgresql/bin/pg_dump --file "/home/user/postgresql_backup/pgsql-dbn-all-"$nowtime".bak" --host "127.0.0.1" --port "5432" --username "un" --dbname "dbn" --verbose --role "delivery" --blobs --encoding "UTF8"
echo "数据库 dbn备份结束!"
echo "删除 30 天前的 数据库备份文件!"
find /home/user/postgresql_backup/ -name "pgsql-dbn-all*" -mtime +30 -exec rm -rf {} \;
set timeout 1000
echo " 30 天前的数据库备份文件删除完毕!"

exit;

 

2.还原

psql -h 127.0.0.1 -U un -d dbn -f pgsql-dbn-all-2021-05-31+01\:
29\:20.bak 

 

posted @ 2021-05-31 13:01  策码奔腾  阅读(1075)  评论(0编辑  收藏  举报
console.log('欢迎');