Använd register
parameter för pg_ctl
program.
Datakatalogen ska inte lagras i Program Files
, platsen för %ProgramData%
är t.ex. ett bra val.
pg_ctl.exe register -N PostgreSQL -U some_windows_username -P windows_password -D "%ProgramData%/db_data" ...
I nyare versioner av Postgres är ett separat Windows-konto inte längre nödvändigt, så följande är också tillräckligt
pg_ctl.exe register -N PostgreSQL -D "%ProgramData%/db_data" ...
Detaljer finns i manualen:http://www.postgresql.org/docs/current/static/app-pg-ctl.html
Du måste se till att katalogen D:/Program Files/PostgreSQL/9.0.4/db_data
har rätt behörigheter för Windows-användaren som du anger med -U
flagga.
Btw:det är en dålig idé att lagra programdata i Program Files
. Du bör flytta datakatalogen någonstans utanför Program Files
eftersom Program Files
är vanligtvis mycket begränsad för vanliga användare - med en mycket god anledning.