2012-08-08 352 views

回答

19

看起來像它-W選項。用這個選項沒有任何價值。

-W, --password   force password prompt (should happen automatically) 

如果您想在不輸入密碼的情況下運行該命令,請使用.pgpass文件。 http://www.postgresql.org/docs/9.1/static/libpq-pgpass.html

+0

如果我ommit -W,它提供了相同的錯誤消息 – 2012-08-09 09:01:22

+1

@BhargavGor:省略'-W admin',不只是'-W' – 2012-08-09 22:05:13

+0

答案應該已被接受 – 2018-02-13 16:54:17

8

對於後代,請注意,pg_dump和pg_restore(以及其他許多命令)無法處理文字處理器創建的長連字符。如果您正在從文字處理器中刪除命令行,請確保它沒有將連字符轉換爲編輯中的其他字符。否則你會得到命令行,看起來是正確的,但毫無希望地混淆了這些工具中的參數解析器。

1

-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 
+0

請在您的答案中添加更多信息。 – 2014-04-11 04:39:31

2

的pg_dump和pg_restore的需要詢問密碼的commanline,如果你把它的命令,他們總是給人「太多的命令行參數「錯誤。您可以在下面使用命令行中或批處理文件中設置相關的環境變量:

"SET PGPASSWORD=<password>" 

,讓你不會被要求在批處理文件中手動輸入密碼。他們使用給定的環境變量。

+0

這是如此科技。它使我從一個可怕的我期望/產生的bash腳本寫下來。謝謝。 – ir0x539 2017-11-29 21:51:21

0

我從複製粘貼中得到了這個,其中1個破折號不同。

那句話:–-host=(第一個破折號IA 「長」 破折號) 更正爲--host=解決它