pg_recovery插件安装部署

PostgreSQL 数据找回工具 `pg_recovery` 可以找回 `commit` / `delete` / `rollback` / `drop column` 操作后的数据. 并以表的形式返回,可以方便的各种查询,帮助寻找需要的数据.

centos中安装过程如下

1. postgresql-14安装

参考相关安装教程,要注意的是pg_recovery需要安装postgresql14-devel,参考如下:

yum install centos-release-scl-rh
yum install postgresql14-devel

2. 插件下载

github下载地址:https://github.com/radondb/pg_recovery

3. 编译插件

cd /home/pg_recovery
make PG_CONFIG=/usr/pgsql-14/bin/pg_config
make install PG_CONFIG=/usr/pgsql-14/bin/pg_config

4. 安装插件

psql
create extension pg_recovery ;

安装插件时要注意如果不只postgres库,则需要在每个库中进行安装。

5. 使用范例

postgres=# create table lxs(id1 int,id2 int);
CREATE TABLE
postgres=# insert into lxs values (1,11);
INSERT 0 1
postgres=# insert into lxs values (2,22);
INSERT 0 1
postgres=# select * from lxs;
 id1 | id2 
-----+-----
   1 |  11
   2 |  22
(2 rows)

postgres=# 

总结

在没有备份数据库的情况下,如果出现数据误操作,可以通过pg_recovery去恢复数据,但是如果表做了vacuum或者vacuum full操作清理了死元组后,pg_recovery无法对表数据进行恢复。具体清理频率可以查看vacuum_defer_cleanup_age参数

show vacuum_defer_cleanup_age;

生产上要保证数据的安全,还是应该通过wal归档和做备份来保证。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值