PostgreSQL DBA(28) – Backup&Recovery#1(基本操作)


PostgreSQL的Backup和Recovery操作相对比较简单,通过简单的几个命令和配置即可实现备份和恢复.

下面通过例子简单说明PG备份和恢复的基本操作.


场景


1.执行备份

2.创建数据表并执行插入

3.删除数据

4.使用备份恢复到删除数据前的状态


参数配置



修改配置文件postgresql.conf

其中archive.sh脚本如下(该脚本参照自德哥博客)

该脚本把WAL log拷贝到$BASEDIR/$DATE目录下

同时修改日志输出


验证配置



启动数据库


切换日志


切换前的目录信息

执行切换

切换后的目录信息


执行备份


使用PG提供的pg_basebackup命令即可实现.

-D指定备份存储的目录

-l指定LABEL

-v显示诊断信息

执行完毕,备份信息可通过查看/data/backup/20190311-1/backup_label文件获得


模拟PITR



插入数据

查看归档日志

记录当前时间


删除数据


恢复


关闭数据库,从base backup中恢复数免费云主机域名

创建recovery.conf文件,指定恢复时间点

执行恢复并验证

查看日志输出

日志提示recovery has paused,连接数据库,执行pg_wal_replay_resume()

日志输出如下

recovery.conf文件改名为recovery.done

backup_label文件改名为backup_label.old


验证数据


参考资料

Base Backup & Point-in-Time Recovery

相关推荐: SQLServer的检查点、redo和undo

SQLServer的检查点、redo和undo 检查点与恢复效率的关系 检查点将脏数据页从当前数据库的缓冲区高速缓存刷新到磁盘上。 这最大限度地减少了恢复时必须重做(Redo)的修改量。 为什么在日志文件中设置了检查点之后,基于日志的恢复机制就可以提高效率了呢…

免责声明:本站发布的图片视频文字,以转载和分享为主,文章观点不代表本站立场,本站不承担相关法律责任;如果涉及侵权请联系邮箱:360163164@qq.com举报,并提供相关证据,经查实将立刻删除涉嫌侵权内容。

(0)
打赏 微信扫一扫 微信扫一扫
上一篇 12/31 17:28
下一篇 12/31 17:29