PostgreSQL中pg_dump的输出结果存放在哪里?

71

我想备份PostgreSQL数据库,想要使用pg_dump命令。
我尝试了:

psql -U postgres
postgres-# pg_dump test > backup.sql

但我不知道输出文件去了哪里。
非常感谢任何帮助。


4
为什么不这样做,然后运行find / -name backup.sql - Bohemian
针对Mac OS,请查看这个答案这里有详细的解释。 - Espoir Murhabazi
请记住,如果您想要将数据写入文件,不要在postgres命令行中运行pg_dump命令。请按照以下链接中提到的方式运行:https://stackoverflow.com/a/24931100/10027828。如果您只是简单地运行pg_dump -h localhost -p 5432 -U postgresUser dbName > backup.sql,那么backup.sql文件将保存在您运行该命令的目录中(所以如果您在Linux终端中,请输入ls来查看目录内容)。 - undefined
12个回答

1
$ pg_dump --dbname="postgresql://[username]:[password]@[host]:[port]/[db_name]" -F t -O -x -R > file.sql

1
感谢您对为Stack Overflow社区做出贡献的兴趣。这个问题已经有相当多的答案,其中一个答案已经得到了社区的广泛验证。您确定您的方法之前没有被提出过吗?如果是这样的话,解释一下您的方法与众不同,在什么情况下可能更好,并/或者为什么您认为以前的答案不够满意会很有帮助。您可以友善地编辑您的回答来提供解释吗? - Jeremy Caney
包括完整的连接字符串(用户名、密码、端口等)对我非常有用。 - jackRoark

0
以下是操作系统规格。
NAME="Ubuntu"
VERSION="20.04 LTS (Focal Fossa)"

我正在使用以下命令来备份PostgreSQL数据库。
pg_dump -U postgres -Fc <db_name> > /var/lib/postgresql/backup-20230123.dump

如果已经明确提供了存储文件路径,那么数据库转储将仅生成到该位置。
对于Windows系统,请提供您想要下载转储的文件夹路径。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接