`pg_dump` 和 `pg_restore`

简介: `pg_dump` 和 `pg_restore`

pg_dumppg_restore 是 PostgreSQL 数据库管理系统中用于备份和恢复数据的两个关键工具。

pg_dump
pg_dump 是一个用于导出(备份)PostgreSQL 数据库的命令行实用程序。它可以创建数据库的逻辑备份,即以SQL命令的形式将表结构、数据以及相关的权限信息等保存到一个文件中。用户可以根据需要选择不同的导出级别,例如仅导出架构(不包括数据)、只导出特定模式的数据或者整个数据库。基本使用格式如下:

pg_dump [选项] [数据库名] > [备份文件名.sql]

例如:

pg_dump -U myuser -F c mydatabase > backup.dump

在这个例子中,我们以定制格式(c)导出了名为 "mydatabase" 的数据库,并将其内容保存到了名为 "backup.dump" 的文件中,同时指定了数据库连接时使用的用户名为 "myuser"。

pg_restore
pg_restore 是用来从之前由 pg_dump 创建的备份文件中恢复数据库的工具。它能够处理多种不同格式的备份文件(如自压缩格式、目录格式或tar归档格式等),并可以根据需要灵活地导入部分或全部备份内容。基本使用格式如下:

pg_restore [选项] [备份文件名] -d [目标数据库名]

例如:

pg_restore -U myuser -d restored_db backup.dump

在此例中,我们将之前用 pg_dump 生成的 "backup.dump" 文件恢复到了名为 "restored_db" 的数据库中,同样使用了用户名 "myuser" 进行数据库连接。

通过这两个工具的配合使用,可以实现对 PostgreSQL 数据库安全且高效的备份与恢复操作。

目录
相关文章
|
缓存 关系型数据库 数据库
PG:checkpoint是什么
PG:checkpoint是什么
96 0
|
JSON 关系型数据库 数据安全/隐私保护
PG
MYSQL VS PG
333 0
|
关系型数据库
pg为什么...?
pg为什么...?
33 0
|
关系型数据库
备份工具pg_dump的使用《postgres》
备份工具pg_dump的使用《postgres》
344 0
|
SQL 安全 关系型数据库
pg_dump
备份PostgreSQL数据库的工具,它甚至可以在数据库正在并发使用时进行完整一致的备份,而不会阻塞其它用户对数据库的访问。该工具生成的转储格式可以分为两种,脚本和归档文件。
204 0
|
关系型数据库 数据库
PG 控制文件
数据库启动时会读取控制文件,识别上次关机前的状态信息(元数据信息)
190 0
|
SQL 弹性计算 关系型数据库
为什么pg_basebackup或pg_start_backup好像hang住确没有开始拷贝文件 - checkpoint 的几种调度(checkpoint_completion_target)
标签 PostgreSQL , checkpoint , 调度 , lazy , immediate , pg_start_backup , pg_basebackup 背景 PostgreSQL支持在线全量备份与增量归档备份。在线全量备份实际上就是拷贝文件,增量备份则分为两种,一种是基于BLOCK lsn变化的BLOCK即增量备份,另一种是基于WAL的持续归档文件备份。 全量备份通常
1593 0
|
关系型数据库 PostgreSQL Perl
|
关系型数据库 数据库 PostgreSQL
Postgresql pg_dump&pg_restore用法
PostgreSQL提供的一个工具pg_dump,逻辑导出数据,生成sql文件或其他格式文件,pg_dump是一个客户端工具,可以远程或本地导出逻辑数据,恢复数据至导出时间点。pg_dump 一次只转储一个数据库, 并且不会转储有关角色或表空间的信息 (因为那些是群集范围而不是每个数据库)。
11487 0