暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片
pg15-pg_rman记录测试使用.txt
77
2页
3次
2023-10-16
5墨值下载
rman 工具下载地址:https://github.com/ossc-db/pg_rman/releases/
rpm 安装:
rpm -ivh 安装之后默认生成在以下目录:
[root@orcl bin]# /usr/pgsql-15/bin/pg_rman
pg_rman 使用
1.配置环境变量
mkdir -p /postgresql/backup/pgrman
mkdir -p /postgresql/backup/archive_wals
mkdir -p /postgresql/backup/pg_log
PATH=$PATH:$HOME/.local/bin:$HOME/bin
export PGDATA=/postgresql/pgdata
export PGHOME=/postgresql/pg15
export BACKUP_PATH=/postgresql/backup/pgrman
export ARCLOG_PATH=/postgresql/backup/archive_wals
export SRVLOG_PATH=/postgresql/backup/pg_log
export PG_RMAN=/usr/pgsql-15/
export PATH=$PATH:$HOME/bin:$PG_RMAN/bin
2.初始化备份目录
配置归档,修改 postgresql.conf 文件:
wal_level=replica
archive_mode =on
archive_command='test ! -f /postgresql/backup/archive_wals/%f && cp %p
/postgresql/backup/archive_wals/%f'
wal_level archive_mode 需要重启数据库
archive_command 不需要重启数据库,只需要再次加载就可以 reload 配置文件
切换 WAL log 验证 wal 日志:select pg_switch_wal();
设置备份目录
pg_rman init -B /postgresql/backup/pgrman
配置 ARCLOG_PATH,就是修改备份目的地目录/postgresql/backup/pgrman 中的 pg_rman.ini 文件的
ARCLOG_PATH 参数,这个值就是归档目录/XX
ARCLOG_PATH='/postgresql/backup/archive_wals'
修改 pg_rman.ini 文件
KEEP_DATA_GENERATIONS = 3 # 备份集冗余度是 3,比如做了 3 次全备份,做第 4 次全备份的时候会
自动把第 1 次的备份从 catalog 里面删除,第四次备份的时候会出现这样的信息 INFO: delete the
backup with start time:" 1 次备份的时间点"
KEEP_DATA_GENERATIONS=2
KEEP_DATA_DAYS=7
COMPRESS_DATA=YES
KEEP_ARCLOG_FILES=7
KEEP_DATA_DAYS=7
KEEP_SRVLOG_FILES=7
KEEP_SRVLOG_DAYS=7
3.进行数据库备份
执行以下命令进行全备,不能异机备份:
[pgsql@orcl pgrman]$ pg_rman -h 127.0.0.1 -p 5432 -U postgres backup -b full
每次备份完,必须要做一次校验,否则备份集不可用用来恢复,增量备份时也不会用它来做增量比较
[postgres@vwattjps2008001 ~]$ pg_rman validate
备份恢复指定时间点:
关闭数据库:pg_ctl stop --最好备份数据库数据文件目录
[pgsql@orcl pg_wal]$ pg_rman restore -B /postgresql/backup/pgrman/ --recovery-
target-time "2023-04-25 14:50:00" --hard-copy
启动数据库:pg_ctl start
此时数据库进入只读状态。
需要执行以下命令才能继续
select pg_wal_replay_resume();
备份脚本:
crontab -l
0 22 * * * su - postgres -c /backup/pgbackup.sh >>/var/message 2>&1
30 22 * * * su - postgres -c /backup/pg_rman.sh >>/var/message 2>&1
[root@vwattjps2008001 ~]# cat /backup/pg_rman.sh
#!/bin/bash
source /home/pgsql/.bash_profile
export DATE=`date +%Y%m%d`;
export PGHOME=/postgresql/pg15
export BACK_LOG=/postgresql/backup/pgrman/log/pg_rman_${DATE}.log
echo "Postgresql Start Backup............................................" >
$BACK_LOG
pg_rman -h 127.0.0.1 -U postgres backup -b full >> $BACK_LOG
pg_rman validate >> $BACK_LOG
error_num=`pg_rman show | awk 'BEGIN{n=0}{if(NR > 3 && $8 != "OK")n++}END{print
n}'`
if [ $error_num > 0 ];then
echo "Backup unsuccessful!"
fi
pg_rman purge >> $BACK_LOG
echo "Backup End............................................" >> $BACK_LOG
of 2
5墨值下载
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文档的来源(墨天轮),文档链接,文档作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

关注
最新上传
暂无内容,敬请期待...
下载排行榜
Top250 周榜 月榜