pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
pg_dumpall — 把所有 Postgres 数据库抽取到一个脚本文件
pg_dumpall pg_dumpall [ -hhost] [ -pport] [ -a ] [ -d ] [ -D ] [ -o ] [ -s ] [ -u ] [ -v ] [ -z ]
pg_dumpall 接受下列命令行参数:
只转储数据,不转储模式(定义)。
把数据转储为正确的插入字符串。
把数据转储为带属性名的插入
除非绝对必要,抑制标识符两边的双引号。 如果有保留字被用作 标识符,加载这些转储数据时可能 出问题。
转储每个表的对象标识符(OID)。
只转储模式(定义),不转储数据。
使用口令认证。提示输入用户名和口令。
指定详细模式
包含 ACL(grant/revoke 命令)和表所有权信息。
pg_dumpall 还接受 下列用于连接参数的命令行参数:
host指定 postmaster 所在机器的主机名。默认 使用本地 Unix 域套接字 而不是 IP 连接。
port指定 postmaster 正在监听连接的 Internet TCP/IP 端口或本地 Unix 域套接字文件扩展名。端口 号默认为 5432,或 PGPORT 环境变量的值(如果 设置了的话)。
使用口令认证。提示 输入 username 和 password。
pg_dumpall 将创建一个文件或 写入 stdout。
port'?pg_dumpall 无法连接到指定主机和 端口上的 postmaster 进程。如果看到这条消息, 请确保 postmaster 在正确的主机上运行,并且你指定了正确的 端口。如果你的站点使用认证系统,请确保你 已获得所需的认证凭据。
dbname' failed. FATAL 1: SetUserId: user 'username' is not in 'pg_shadow'你在关系 pg_shadow 中没有有效的 条目,将不被允许访问 Postgres。 请 联系你的 Postgres 管理员。
table): SELECT failed你没有读取数据库的 权限。请联系你的 Postgres 站点管理员。
pg_dumpall 在内部执行 SELECT 语句。如果运行 pg_dumpall 遇到问题, 请确保你能用例如 psql 从数据库选择 信息。
pg_dumpall 是一个把所有 Postgres 数据库转储到一个文件的 实用工具。它还转储对所有数据库全局的 pg_shadow 表。 pg_dumpall 在这个文件中包含在加载之前 自动创建每个被转储数据库的 相应命令。
pg_dumpall 接受所有 pg_dump 选项,但 -f、-t 和 dbname 应当省略。
关于这一功能的 更多信息请参阅 pg_dump。
要转储所有数据库:
% pg_dumpall -o > db.out
可以为 pg_dumpall 使用大多数 pg_dump 选项。
要重新加载这个数据库:
psql -e template1 < db.out
重新加载时可以使用大多数 psql 选项。
译文有误、术语不当或页面显示问题,请到译文仓库 pgsty/pgdoc 报告译文问题。 英文原文本身的问题,请在当前版本的对应页面向上游反馈;上游不再修订已结束维护的版本。