【postgresql】逻辑备份工具pg_dump

1.pg_dump介绍

pg_dump是一个逻辑备份PostgreSQL数据库的工具,目的是将一个PostgreSQL
数据库转储到一个脚本文件或者其他归档文件中,可以在数据库正在使用的时候
进行完整一致的备份,并不阻塞其他用户对数据库的访问(读或者写)

2.pg_dump特性

pg_dump只能备份单个数据库,不会导出角色和表空间相关的信息。
pg_dump是一个客户端,因此可以远程访问数据库进行备份,但备份存放在客户端。
pg_dump需要有备份表的读权限,建议使用数据库超级用户来备份。
pg_dump可以支持跨版本跨平台数据库导入。
pg_dump转储的是数据库快照,在pg_dump运行过程中发生的更新将不会被转储
pg_dump自定义文件格式必须与pg_restore配合使用来重建数据。
pg_dump工作的时候并不阻塞其他的对数据库的操作,但是会阻塞那些需要排他所的操作,
比如alter table;
pg_dump脚本转储是包含SQL命令的纯文本文件,可以用来重构数据库到它被转储时
的状态。

3.备份 

--不包含:create database 语句 
pg_dump -h 192.168.1.10 -U sspu sspudb > sspudb1.sql
--包含create database语句。
pg_dump -h 192.168.1.10 -U sspu -C sspudb > sspudb2.sql
--仅导出结果,不包含 create database语句。
pg_dump -h 192.168.1.10 -U sspu -s sspudb > sspudb3.sql
--导出指定数据库的结果并包含创建语句。
pg_dump -h 192.168.1.10 -U sspu -C -s sspudb > sspudb4.sql

4.恢复 

drop database sspudb;  

--需要使用管理员账号导入
[pgsql@oracle1:/postgresql/backup]$psql postgres -U postgres < sspudb2.sql
Password for user postgres: 

sspudb=> \dt
                    List of relations
 Schema |        Name         |       Type        | Owner 
--------+---------------------+-------------------+-------
 public | my_tab1             | table             | sspu
 public | sspudb_h1_p1        | table             | sspu
 public | sspudb_h1_p2        | table             | sspu
 public | sspudb_h1_p3        | table             | sspu
 public | sspudb_h1_p4        | table             | sspu
 public | sspudb_hash1        | partitioned table | sspu
 public | sspudb_list1        | partitioned table | sspu
 public | sspudb_list1_pit1   | table             | sspu
 public | sspudb_list1_pit2   | table             | sspu
 public | sspudb_list1_pother | table             | sspu
 public | sspudb_r1           | partitioned table | sspu
 public | sspudb_r1_p2010     | table             | sspu
 public | sspudb_r1_p2011     | table             | sspu
 public | sspudb_r1_p2012     | table             | sspu
 public | sspudb_r1_p2013     | table             | sspu
 public | sspudb_r1_p2014     | table             | sspu
 public | sspudb_r1_p2015     | table             | sspu
 public | sspudb_r1_p2016     | table             | sspu
 public | sspudb_r1_p2017     | table             | sspu
 public | sspudb_r1_p2018     | table             | sspu
 public | sspudb_r1_p2019     | table             | sspu
 public | sspudb_r1_p2020     | table             | sspu
 public | sspudb_r1_phis      | table             | sspu
(23 rows)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值