Woot4Moo
Woot4Moo

Reputation: 24336

Postgres command line install from zip file fails to properly start the windows service after the database has been configured

Below is the batch file I am kicking off at the end of an installer to properly configure my postgres database, however there comes an issue wherein the service is unable to be started.

This is what the service parameters look like:

C:\Program Files\pgsql\bin/pg_ctl.exe runservice -N "MyPostGres" -D "C:/Program Files/pgsql/PGDATA"

Batch file

@echo off

if "%1" == "" goto displayUsage
if "%2" == "" goto displayUsage
if "%3" == "" goto displayUsage
goto setup

:displayUsage
echo supply arguments: SUPER_USER_NAME SUPER_USER_PASSWORD USER_PASSWORD \ >> C:\myLog.log 
goto end

:setup
echo %~1 >> C:\myLog.log 
echo %~2 >> C:\myLog.log 
echo %~3 >> C:\myLog.log 
echo calling initdb! >> C:\myLog.log
initdb -U MY_PG ../PGDATA

echo calling pg_ctl register! >> C:\myLog.log
rem provide a variable for PGDATA
pg_ctl register -N TravisPostGres -U MY_PG -P wooo! -D "C:\Program Files\pgsql\PGDATA"

echo calling pg_ctl start! >> C:\myLog.log
pg_ctl start -D ../PGDATA -w

echo calling createuser!  %~1 >> C:\myLog.log
createuser -s -UMY_PG %~1

:end
echo the end! >> C:\myLog.log
exit /B 0

Upvotes: 1

Views: 2246

Answers (1)

Woot4Moo
Woot4Moo

Reputation: 24336

I discovered that the issue was the existence of the following file

C:\Program

This file is invisible via explorer view but when executing dir from the c directory it was shown as a 0k file. Deleting this file proved to be the fix.

Upvotes: 1

Related Questions