Verwenden Sie das register
Parameter für pg_ctl
Programm.
Das Datenverzeichnis sollte nicht in Program Files
gespeichert werden , der Speicherort von %ProgramData%
ist z.B. eine gute Wahl.
pg_ctl.exe register -N PostgreSQL -U some_windows_username -P windows_password -D "%ProgramData%/db_data" ...
In neueren Versionen von Postgres ist kein separates Windows-Konto mehr erforderlich, daher reicht auch Folgendes aus
pg_ctl.exe register -N PostgreSQL -D "%ProgramData%/db_data" ...
Details finden Sie im Handbuch:http://www.postgresql.org/docs/current/static/app-pg-ctl.html
Sie müssen sicherstellen, dass das Verzeichnis D:/Program Files/PostgreSQL/9.0.4/db_data
hat die richtigen Berechtigungen für den Windows-Benutzer, den Sie mit -U
angeben Flagge.
Übrigens:Es ist eine schlechte Idee, Programmdaten in Program Files
zu speichern . Sie sollten das Datenverzeichnis irgendwo außerhalb von Program Files
verschieben weil Program Files
ist normalerweise für normale Benutzer stark eingeschränkt - aus einem sehr guten Grund.