PostgreSQL的备份和恢复操作相对比较简单,通过简单的几个命令和配置即可实现备份和恢复。
下面通过例子简单说明PG备份和恢复的基本操作。
<强>
场景
强>
1 .执行备份
2 .创建数据表并执行插入
3 .删除数据
4 .使用备份恢复到删除数据前的状态
<强>
参数配置
强>
修改配置文件postgresql.conf
该脚本把细胞膜日志拷贝到BASEDIR/日期美元目录下
同时修改日志输出
<前> <代码> log_destination=' csvlog ' logging_collector=对 log_directory=' pg_log ' log_filename=' postgresql - Y % - % - % d.log” 代码> >之前
<强>
验证配置
强>
启动数据库
切换日志
切换前的目录信息
<前>
<代码>
(xdb@localhost ~)我PGDATA美元/pg_wal
总计49152
- - - - - - - -。1 xdb xdb 16777216 3月11日14:21 00000001000000000000000 d
- - - - - - - -。1 xdb xdb 16777216 3月11日十四20 16777216 e
- - - - - - - -。1 xdb xdb 16777216 3月11日十四20 16777216 f
drwx - - - - - -。2 xdb xdb 6 3月11日14:21 archive_status
(xdb@localhost ~)我PGDATA美元/pg_wal/archive_status
总0
[xdb@localhost ~]美元/数据/archivelog/20190311/总0
代码>
>之前
执行切换
<前> <代码>=#选择testdb pg_switch_wal (); pg_switch_wal --------------- 0/D0000E8 (1行)=#选择testdb pg_switch_wal (); pg_switch_wal --------------- 0/E000120 (1行) 代码> >之前切换后的目录信息
<前> <代码> (xdb@localhost ~)我PGDATA美元/pg_wal 总计49152 - - - - - - - -。1 xdb xdb 16777216 3月11日14:26 16777216 e - - - - - - - -。1 xdb xdb 16777216 3月11日14:26 16777216 f - - - - - - - -。1 xdb xdb 16777216 3月11日14:26 16777216 drwx - - - - - -。2 3月11日14:26 archive_status xdb xdb 43 (xdb@localhost ~)我PGDATA美元/pg_wal/archive_status 总0 - - - - - - - -。1 xdb xdb 0 3月11日14:26 00000001000000000000000 e.done (xdb@localhost ~)美元 [xdb@localhost ~]美元/数据/archivelog/20190311/总计32768 - - - - - - - -。1 xdb xdb 16777216 3月11日14:26 16777216 d - - - - - - - -。1 xdb xdb 16777216 3月11日14:26 16777216 e 代码> >之前
<强>
执行备份
强>
使用PG提供的pg_basebackup命令即可实现。
<前>
<代码>
[xdb@localhost ~]美元pg_basebackup - d/数据/备份/20190311 - 1/- l 20190311 - 1 - v
pg_basebackup:备份启动基地,等待检查点完成
pg_basebackup:检查点完成
pg_basebackup:写前日志起点:0/10000028时间1
pg_basebackup:开始背景WAL接收机
pg_basebackup:创建临时复制槽“pg_basebackup_21910”
pg_basebackup:写前日志终点:0/10000130
pg_basebackup:等待后台进程完成流…
pg_basebackup:基础备份完成
(xdb@localhost ~)美元