Version 43 (modified by 15 years ago) ( diff ) | ,
---|
Initialize PostgreSQL cluster and run as server for compiled version
This is still a work in progress (Back to windows compile)
- Create a Windows local user called "postgres".
- Initialize the DB cluster from the Msys shell:
/c/postgres/bin/initdb -U postgres -D /c/postgres/data -A trust
- Change the configurated port
You may want to change the port in the "C:/postgres/data/posgresql.conf" file to something like 8433 in order to avoid conflict with your regular postgres install.
- Start PostgreSQL following one of those two options:
Option A) As a Windows service:
1) Install the service: (from a DOS shell not MinGW) (Note that in this case postgres is a windows account so use the password you specified for the windows account.)
"c:\postgres\bin\pg_ctl" register -N "pgsql-8.4 test" -D "C:\postgres\data" -U postgres -P "somepassword"
2) Start the "pgsql-8.4 test" Services from "Configuration Panels->Administration Tools->Services"
If the service does not start, check the Windows Event Viewer for meaningfull error message
3) You can uninstall the service with:
"c:\postgres\bin\pg_ctl" unregister -N "pgsql-8.4 test"
This requires a restart. A faster way is to stop the service and then from dos:
sc delete "pgsql-8.4 test"
Option B) Directly from the DOS shell:
1) In the same shell in which you initialized the DB cluster, do:
"c:\postgres\bin\pg_ctl" -o "-p 5433" start -D C:\postgres\data
2) You can stop the server with:
"c:\postgres\bin\pg_ctl" stop -D C:\postgres\data
3) You can restart the server with:
"c:\postgres\bin\pg_ctl" -o "-p 5433" restart -D C:\postgres\data
- Before you do a make check for PostGIS, make sure to do an export of PGPORT and other variable to point to the one you are testing (you do this in Msys)
http://www.postgresql.org/docs/8.4/interactive/libpq-envars.html
These are only good for the current session
export PATH="/c/postgres/bin:$PATH"
export PGPORT=8433
export PGUSER=postgres
to see path settings or any other variables at msys prompt
echo ${PATH}