was ist los mit diesem Befehl:
pg_dump -U postgres -W admin --disable-triggers -a -t employees -f D:\ddd.txt postgres
Dies führt zu Fehlern bei zu vielen Befehlszeilenargumenten
Sieht aus wie die Option -W. Es gibt keinen Wert für diese Option.
-W, --password force password Prompt (should happen automatically)
Wenn Sie den Befehl ausführen möchten, ohne ein Kennwort einzugeben, verwenden Sie eine .pgpass-Datei. http://www.postgresql.org/docs/9.1/static/libpq-pgpass.html
Beachten Sie für die Nachwelt, dass pg_dump und pg_restore (und viele andere Befehle) keine langen Bindestriche verarbeiten können, die von Word-Prozessoren erstellt werden. Wenn Sie Befehlszeilen aus einem Textverarbeitungsprogramm ausschneiden, stellen Sie sicher, dass die Trennzeichen während der Bearbeitung nicht in andere umgewandelt wurden. Andernfalls erhalten Sie Befehlszeilen, die richtig aussehen, die Argument-Parser in diesen Tools jedoch hoffnungslos verwirren.
pg_dump und pg_restore müssen das Kennwort auf commanline abfragen. Wenn Sie den Befehl setzen, wird immer der Fehler "zu viele Befehlszeilenargumente" ausgegeben. Im Folgenden können Sie verwandte Umgebungsvariablen in der Befehlszeile oder der Batchdatei einstellen:
"SET PGPASSWORD=<password>"
sie werden also nicht aufgefordert, das Kennwort manuell in die Batchdatei einzugeben. Sie verwenden gegebene Umgebungsvariable.
Ich habe dies durch Kopieren erhalten, wobei einer der Striche anders war.
War: –-Host=
(erster Strich ist ein "langer" Bindestrich) Korrigiert zu --Host=
gelöst
-W
-> fordert zur Eingabe eines Kennworts auf, um den vollständigen DB-Speicherauszug zu verwenden
pg_dump -h 192.168.44.200 -p 5432 -U postgres -W -c -C -Fc -f C:\MMM\backup10_3.backup DATABASE_NAME
Anstatt das Kennwort mit dem Code -W
zu übergeben, beginnen Sie mit dem Festlegen der temporären Variablen für Postgres
PGPASSWORD="mypass" pg_dump -U postgres--disable-triggers -a -t employees -f D:\ddd.txt postgres
Eine weitere Option ist das Hinzufügen einer ~/.pgpass
-Datei mit folgendem Inhalt:
hostname:port:database:username:password
lesen Sie mehr hier