pg_dump 命令的基本用法:
pg_dump -U username -d database_name > filename
其中,-U username
指定连接数据库的用户名,-d database_name
指定要备份的数据库名称,> filename
指定备份文件的名称。
例如,要备份名为 mydatabase
的数据库,用户名为 postgres
,可以使用以下命令:
pg_dump -U postgres -d mydatabase > mydatabase备份.sql
备份文件将被创建为 mydatabase备份.sql
,其中包含了数据库的所有对象和数据。
你可以使用 pg_restore
命令来恢复备份文件。pg_restore 命令的基本用法如下:
pg_restore -U username -d database_name < filename
其中,-U username
指定连接数据库的用户名,-d database_name
指定要恢复的数据库名称,< filename
指定备份文件的名称。
例如,要恢复名为 mydatabase备份.sql
的备份文件到名为 mydatabase
的数据库,用户名为 postgres
,可以使用以下命令:
pg_restore -U postgres -d mydatabase < mydatabase备份.sql
pg_restore 命令将读取备份文件中的内容,并将其恢复到指定的数据库中。
请注意,在恢复备份文件之前,确保你已经创建了目标数据库,并且与备份文件中的数据库具有相同的结构和权限。
此外,pg_dump 和 pg_restore 命令还有许多其他选项,例如指定备份文件的格式、压缩备份文件、排除某些对象等。
pg_dump 命令的常用选项包括:
-U username
:指定连接数据库的用户名。-d database_name
:指定要备份的数据库名称。-F format
:指定备份文件的格式,例如custom
(自定义)、tar
(tar 格式)、gz
(gzipped tar 格式)等。-f filename
:指定备份文件的名称。-p port
:指定连接数据库的端口号。-c
:创建一个新的备份文件,而不是覆盖已存在的文件。-s
:在备份文件中包含数据库的模式信息。-x
:排除某些对象,例如表、视图等。-Z
:在备份文件中包含大对象(BLOB)的数据。-T table_name
:仅备份指定的表。-N
:不备份索引。-O
:在备份文件中包含对象的创建语句。-I
:在备份文件中包含插入数据的语句。-E
:在备份文件中包含更新数据的语句。-A
:在备份文件中包含删除数据的语句。-n
:在备份文件中包含名称转换的语句。-o
:在备份文件中包含排序规则的语句。-g
:在备份文件中包含几何数据的语句。-b
:在备份文件中包含大对象的语句。-v
:显示详细的备份过程信息。-V
:显示版本信息。-R
:在备份文件中包含角色信息。-S
:在备份文件中包含服务器配置信息。-D
:在备份文件中包含数据库定义信息。-C
:在备份文件中包含字符集信息。-L
:在备份文件中包含语言信息。-1
:在备份文件中使用单字节字符集。-0
:在备份文件中使用零字节填充。-e
:在备份文件中使用加密。-k
:在备份文件中包含密码。-w
:在备份文件中包含警告信息。-r
:在备份文件中包含复制数据的语句。-t
:在备份文件中包含事务信息。-z
:在备份文件中包含压缩数据的语句。-Z
:在备份文件中包含解压数据的语句。-j
:在备份文件中包含 JSON 数据的语句。-J
:在备份文件中包含 JSONB 数据的语句。-m
:在备份文件中包含映射数据的语句。-M
:在备份文件中包含多维数组数据的语句。-P
:在备份文件中包含 PL/Python 函数的语句。-R
:在备份文件中包含 PL/R 函数的语句。-S
:在备份文件中包含 PL/SQL 函数的语句。-U
:在备份文件中包含用户定义函数的语句。-W
:在备份文件中包含窗口函数的语句。-X
:在备份文件中包含 XML 数据的语句。-Y
:在备份文件中包含 YAML 数据的语句。-Z
:在备份文件中包含 ZIP 数据的语句。-a
:在备份文件中包含所有对象,包括系统对象。-i
:在备份文件中包含内建函数的语句。-l
:在备份文件中包含大对象的语句。-o
:在备份文件中包含排序规则的语句。-s
:在备份文件中包含服务器配置信息的语句。-x
:在备份文件中排除指定的表或视图。-y
:在备份文件中排除指定的模式。-z
:在备份文件中排除指定的大对象。-Z
:在备份文件中排除指定的 ZIP 数据。-A
:在备份文件中排除指定的几何数据。-B
:在备份文件中排除指定的大对象数据。-C
:在备份文件中排除指定的字符集数据。-D
:在备份文件中排除指定的数据库定义数据。-E
:在备份文件中排除指定的更新数据的语句。-F
:在备份文件中排除指定的插入数据的语句。-G
:在备份文件中排除指定的复制数据的语句。-H
:在备份文件中排除指定的事务信息。-I
:在备份文件中排除指定的 JSON 数据。-J
:在备份文件中排除指定的 JSONB 数据。-
pg_restore 命令的常用选项包括:
-U username
:指定连接数据库的用户名。-d database_name
:指定要恢复的数据库名称。-F format
:指定备份文件的格式,例如custom
(自定义)、tar
(tar 格式)、gz
(gzipped tar 格式)等。-f filename
:指定备份文件的名称。-p port
:指定连接数据库的端口号。-c
:创建一个新的数据库,而不是覆盖已存在的数据库。-s
:在恢复过程中包含数据库的模式信息。-x
:排除某些对象,例如表、视图等。-Z
:在恢复过程中包含大对象(BLOB)的数据。-T table_name
:仅恢复指定的表。-N
:不恢复索引。-O
:在恢复过程中包含对象的创建语句。-I
:在恢复过程中包含插入数据的语句。-E
:在恢复过程中包含更新数据的语句。-A
:在恢复过程中包含删除数据的语句。-n
:在恢复过程中包含名称转换的语句。-o
:在恢复过程中包含排序规则的语句。-g
:在恢复过程中包含几何数据的语句。-b
:在恢复过程中包含大对象的语句。-v
:显示详细的恢复过程信息。-V
:显示版本信息。-R
:在恢复过程中包含角色信息。-S
:在恢复过程中包含服务器配置信息。-D
:在恢复过程中包含数据库定义信息。-C
:在恢复过程中包含字符集信息。-L
:在恢复过程中包含语言信息。-1
:在恢复过程中使用单字节字符集。-0
:在恢复过程中使用零字节填充。-e
:在恢复过程中使用加密。-k
:在恢复过程中包含密码。-w
:在恢复过程中包含警告信息。-r
:在恢复过程中包含复制数据的语句。-t
:在恢复过程中包含事务信息。-z
:在恢复过程中包含压缩数据的语句。-Z
:在恢复过程中包含解压数据的语句。-j
:在恢复过程中包含 JSON 数据的语句。-J
:在恢复过程中包含 JSONB 数据的语句。-m
:在恢复过程中包含映射数据的语句。-M
:在恢复过程中包含多维数组数据的语句。-P
:在恢复过程中包含 PL/Python 函数的语句。-R
:在恢复过程中包含 PL/R 函数的语句。-S
:在恢复过程中包含 PL/SQL 函数的语句。-U
:在恢复过程中包含用户定义函数的语句。-W
:在恢复过程中包含窗口函数的语句。-X
:在恢复过程中包含 XML 数据的语句。-Y
:在恢复过程中包含 YAML 数据的语句。-Z
:在恢复过程中包含 ZIP 数据的语句。-a
:在恢复过程中包含所有对象,包括系统对象。-i
:在恢复过程中包含内建函数的语句。-l
:在恢复过程中包含大对象的语句。-o
:在恢复过程中包含排序规则的语句。-s
:在恢复过程中包含服务器配置信息的语句。-x
:在恢复过程中排除指定的表或视图。-y
:在恢复过程中排除指定的模式。-z
:在恢复过程中排除指定的大对象。-Z
:在恢复过程中排除指定的 ZIP 数据。-A
:在恢复过程中排除指定的几何数据。-B
:在恢复过程中排除指定的大对象数据。-C
:在恢复过程中排除指定的字符集数据。-D
:在恢复过程中排除指定的数据库定义数据。-E
:在恢复过程中排除指定的更新数据的语句。-F
:在恢复过程中排除指定的插入数据的语句。-G
:在恢复过程中排除指定的复制数据的语句。-H
:在恢复过程中排除指定的事务信息。-I
:在恢复过程中排除指定的 JSON 数据。-J
:在恢复过程中排除指定的 JSONB 数据。