什么是错用这个命令:
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的需要询问密码的commanline,如果你把它的命令,他们总是给予“太多的命令行参数”错误。 您可以在下面使用命令行中或批处理文件中设置相关的环境变量:
"SET PGPASSWORD=<password>"
这样你不会被要求在批处理文件中手动输入密码。 他们使用给定的环境变量。
从我的复制粘贴,其中破折号1是不同的得到这个。
是: –-host=
(第一破折号IA“长”破折号)校正为--host=
解决了它
-W
- >会提示输入密码,以充分DB转储使用一些东西一样
pg_dump -h 192.168.44.200 -p 5432 -U postgres -W -c -C -Fc -f C:\MMM\backup10_3.backup DATABASE_NAME
相反,通过密码与-W
标志开始设置临时变量Postgres的:
PGPASSWORD="mypass" pg_dump -U postgres--disable-triggers -a -t employees -f D:\ddd.txt postgres
另一种方法是添加~/.pgpass
文件,像这样的内容:
hostname:port:database:username:password
阅读更多在这里