这个命令有什么问题:
pg_dump -U postgres -W admin --disable-triggers -a -t employees -f D:\ddd.txt postgres
这给出了太多命令行参数的错误
这个命令有什么问题:
pg_dump -U postgres -W admin --disable-triggers -a -t employees -f D:\ddd.txt postgres
这给出了太多命令行参数的错误
看起来像它的 -W 选项。该选项没有任何价值。
-W, --password force password prompt (should happen automatically)
如果要在不输入密码的情况下运行命令,请使用 .pgpass 文件。 http://www.postgresql.org/docs/9.1/static/libpq-pgpass.html
对于后代,请注意 pg_dump 和 pg_restore(以及许多其他命令)无法处理文字处理器创建的长连字符。如果您从文字处理器剪切粘贴命令行,请确保它没有在编辑中将您的连字符转换为其他内容。否则,您将获得看起来正确但令人绝望地混淆这些工具中的参数解析器的命令行。
pg_dump 和 pg_restore 需要在命令行询问密码,如果你输入命令,他们总是给出“命令行参数太多”的错误。您可以使用以下命令在命令行或批处理文件中设置相关环境变量:
"SET PGPASSWORD=<password>"
这样您就不会被要求在批处理文件中手动输入密码。他们使用给定的环境变量。
-W
而不是通过为 postgres 设置临时变量来传递带有标志的密码:
PGPASSWORD="mypass" pg_dump -U postgres--disable-triggers -a -t employees -f D:\ddd.txt postgres
-W
-> 将提示输入密码以获取完整的数据库转储,使用类似的东西
pg_dump -h 192.168.44.200 -p 5432 -U postgres -W -c -C -Fc -f C:\MMM\backup10_3.backup DATABASE_NAME
我从复制粘贴中得到了这个,其中 1 个破折号不同。
是:(–-host=
第一个破折号是“长”破折号)更正以--host=
解决它
2021 年 11 月 30 日,pg v12,Windows 10
pg_dump -U postgres -W -F t postgres > C:\myfolder\pg.tar
-U "postgres"
作为用户名,
-W
提示输入 psd,
-F t
表示格式为 .tar,
> C:\myfolder\pg.tar
是目标路径和文件名