Postgresql 创建数据库转储不会';我好像不工作

Postgresql 创建数据库转储不会';我好像不工作,postgresql,Postgresql,我已经安装了PostgresQL 9.6.2,我正在尝试使用pg\u dump命令备份我的一个数据库(my\u database)。它似乎不起作用,因为我看不到任何输出文件。 我使用的是Mac电脑,从终端(在我的项目目录中)我使用: 正在postgres我的数据库默认用户和密码。 我已经尝试过使用sudopsqlpostgres-postgres,结果相同。 我想象我正在经历某种权限缺失,但无法理解它。 那么,如何拥有这样做的正确权限呢?Postgres附带了很多东西,包括命令行工具。这包括标准

我已经安装了PostgresQL 9.6.2,我正在尝试使用
pg\u dump
命令备份我的一个数据库(
my\u database
)。它似乎不起作用,因为我看不到任何输出文件。
我使用的是Mac电脑,从终端(在我的项目目录中)我使用:

正在
postgres
我的数据库默认用户和密码。 我已经尝试过使用
sudopsqlpostgres-postgres
,结果相同。
我想象我正在经历某种权限缺失,但无法理解它。

那么,如何拥有这样做的正确权限呢?

Postgres附带了很多东西,包括命令行工具。这包括标准客户端,
psql
,以及命令
pg_dump
。需要从shell命令行调用的

如果在
psql
命令行中键入它,那么一旦终止该行(使用“
”),就会出现语法错误——它既不是有效的sql,也不是对
psql
的有效命令


希望有帮助

您可能正在postgres命令行中使用
pg_dump
?这是一个shell命令,不是postgres命令您将看到错误。好的,我是从postgres命令行执行的。但现在我在使用密码时出错了。有没有比
pg_dump my_database>my_database.bak
更好(更完整)的命令?@jmelesky好的,我想我是用:
pg_dump-U postgres my_database>my_database.bak
得到的。你能回答一下吗?这样我就可以接受了(主要问题实际上是我在postgres命令行上运行命令……我想知道PostgreSQL是否应该在
psql
命令行上添加对运行
pg_dump
pg_restore
sudo
等尝试的检测?我们已经为
PGDMP
添加了检测功能,以帮助那些试图运行
psq的人l-f一些自定义格式的转储文件
。可能不是;期望有人像所有其他psql命令一样尝试用分号终止它,然后他们会得到一个有用的错误,这并不是不合理的。
psql postgres postgres
pg_dump my_database > my_database.bak