Postgres service fails to start on Windows 2003
Hi All -
I'm having problems getting the PostgreSQL service to start. This
started happening after I changed a disk quota to allow for larger
database sizes, and no other configuration has changed. Here's what is
in the event log. I've tried rebooting several times, and deleting
postmaster*.* files as well.
2009-02-18 14:02:51 PST LOG: loaded library
"$libdir/plugins/plugin_debugger.dll"
2009-02-18 14:02:51 PST LOG: could not bind IPv4 socket: No error
2009-02-18 14:02:51 PST HINT: Is another postmaster already running on
port 5432? If not, wait a few seconds and retry.
2009-02-18 14:02:51 PST WARNING: could not create listen socket for "*"
2009-02-18 14:02:51 PST FATAL: could not create any TCP/IP sockets
Timed out waiting for server startup
I'm totally out of ideas, anyone know how to fix this? Thanks!
Mike
If it helps, I've tried running postgres.exe from the command prompt in
debug mode and it just locks up after this:
C:\Program Files\PostgreSQL\8.3\data>..\bin\postgres.exe -p 5432 -D . -d 5
2009-02-18 22:23:53 GMT DEBUG: postgres: PostmasterMain: initial
environ dump:
2009-02-18 22:23:53 GMT DEBUG: -----------------------------------------
2009-02-18 22:23:53 GMT DEBUG: ALLUSERSPROFILE=C:\Documents and
Setting
s\All Users
2009-02-18 22:23:53 GMT DEBUG:
ClusterLog=C:\WINDOWS\Cluster\cluster.lo
g
2009-02-18 22:23:53 GMT DEBUG: CommonProgramFiles=C:\Program
Files\Comm
on Files
2009-02-18 22:23:53 GMT DEBUG: ComSpec=C:\WINDOWS\system32\cmd.exe
2009-02-18 22:23:53 GMT DEBUG: CYGWIN=tty
2009-02-18 22:23:53 GMT DEBUG: FP_NO_HOST_CHECK=NO
2009-02-18 22:23:53 GMT DEBUG: lib=C:\Program Files\SQLXML 4.0\bin\
2009-02-18 22:23:53 GMT DEBUG: NUMBER_OF_PROCESSORS=4
2009-02-18 22:23:53 GMT DEBUG: OS=Windows_NT
2009-02-18 22:23:53 GMT DEBUG:
PATHEXT=.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.J
S;.JSE;.WSF;.WSH
2009-02-18 22:23:53 GMT DEBUG: PROCESSOR_ARCHITECTURE=x86
2009-02-18 22:23:53 GMT DEBUG: PROCESSOR_IDENTIFIER=x86 Family
6 Model
15 Stepping 11, GenuineIntel
2009-02-18 22:23:53 GMT DEBUG: PROCESSOR_LEVEL=6
2009-02-18 22:23:53 GMT DEBUG: PROCESSOR_REVISION=0f0b
2009-02-18 22:23:53 GMT DEBUG: ProgramFiles=C:\Program Files
2009-02-18 22:23:53 GMT DEBUG: PROMPT=$P$G
2009-02-18 22:23:53 GMT DEBUG: SBSProgramDir=C:\Program
Files\Microsoft
Windows Small Business Server
2009-02-18 22:23:53 GMT DEBUG: SystemDrive=C:
2009-02-18 22:23:53 GMT DEBUG: SystemRoot=C:\WINDOWS
2009-02-18 22:23:53 GMT DEBUG:
TEMP=C:\DOCUME~1\postgres\LOCALS~1\Temp
2009-02-18 22:23:53 GMT DEBUG:
TMP=C:\DOCUME~1\postgres\LOCALS~1\Temp
2009-02-18 22:23:53 GMT DEBUG: USERDNSDOMAIN=KITCHENPC.LOCAL
2009-02-18 22:23:53 GMT DEBUG: USERDOMAIN=HOME
2009-02-18 22:23:53 GMT DEBUG: USERNAME=postgres
2009-02-18 22:23:53 GMT DEBUG: USERPROFILE=C:\Documents and
Settings\po
stgres
2009-02-18 22:23:53 GMT DEBUG: VISUALSVN_SERVER=C:\Program
Files\Visual
SVN Server\
2009-02-18 22:23:53 GMT DEBUG: windir=C:\WINDOWS
2009-02-18 22:23:53 GMT DEBUG: winsbprogramdir=C:\Program
Files\Windows
for Small Business Server
2009-02-18 22:23:53 GMT DEBUG: PGLOCALEDIR=C:/Program
Files/PostgreSQL/
8.3/share/locale
2009-02-18 22:23:53 GMT DEBUG: PGSYSCONFDIR=C:/Program
Files/PostgreSQL
/8.3/etc
2009-02-18 22:23:53 GMT DEBUG: LC_COLLATE=English_United
States.1252
2009-02-18 22:23:53 GMT DEBUG: LC_CTYPE=English_United States.1252
2009-02-18 22:23:53 GMT DEBUG: LC_MONETARY=C
2009-02-18 22:23:53 GMT DEBUG: LC_NUMERIC=C
2009-02-18 22:23:53 GMT DEBUG: LC_TIME=C
2009-02-18 22:23:53 GMT DEBUG: LC_MESSAGES=English_United
States.1252
2009-02-18 22:23:53 GMT DEBUG: -----------------------------------------
2009-02-18 22:23:53 GMT DEBUG: TZ "US/Pacific" matches Windows timezone
"Pacifi
c Standard Time"
2009-02-18 14:23:53 PST LOG: loaded library
"$libdir/plugins/plugin_debugger.dl
l"
2009-02-18 14:23:53 PST DEBUG: invoking IpcMemoryCreate(size=38395904)
2009-02-18 14:23:53 PST DEBUG: max_safe_fds = 987, usable_fds = 1000,
already_o
pen = 3
Mike Christensen wrote:
Show quoted text
Hi All -
I'm having problems getting the PostgreSQL service to start. This
started happening after I changed a disk quota to allow for larger
database sizes, and no other configuration has changed. Here's what
is in the event log. I've tried rebooting several times, and deleting
postmaster*.* files as well.2009-02-18 14:02:51 PST LOG: loaded library
"$libdir/plugins/plugin_debugger.dll"2009-02-18 14:02:51 PST LOG: could not bind IPv4 socket: No error
2009-02-18 14:02:51 PST HINT: Is another postmaster already running
on port 5432? If not, wait a few seconds and retry.2009-02-18 14:02:51 PST WARNING: could not create listen socket for "*"
2009-02-18 14:02:51 PST FATAL: could not create any TCP/IP sockets
Timed out waiting for server startup
I'm totally out of ideas, anyone know how to fix this? Thanks!
Mike
Mike Christensen <imaudi@comcast.net> writes:
I'm having problems getting the PostgreSQL service to start. This
started happening after I changed a disk quota to allow for larger
database sizes, and no other configuration has changed.
You moved the Postgres account to some other group, right?
2009-02-18 14:02:51 PST LOG: could not bind IPv4 socket: No error
I'm betting this is actually some kind of permissions issue (with
Windows not being very helpful about letting PG know that). Is there
such a thing as "allowed to connect to the internet" in your account
settings?
regards, tom lane
Nope, the Postgres account is still in the "Users" group, I just changed the quota on that actual user account to have no limit. Nothing else about the account has changed.
From what I can tell, the first time postgres attempts to start, it just hangs and the postgres.exe process lingers around in memory. That's why I keep seeing these postmaster.pim files popup, and I can see several postgres.exe processes in memory as well. I think the first time, NT just times out trying to start the service. Then I go and try to start the service manually and get socket binding errors since the "hung" versions are still around.
I got this idea after running postgres.exe from the command line and it just hangs. I seriously think some of my DB data is corrupted. Most likely after creating a 1gig DB and running out of disk quota, something didn't get closed correctly or some file got corrupted and now the service won't start. However, since I can't get into the server I can't try to nuke the DB.
Can I manually remove data files to erase a DB? Basically I'm in a position where I need to keep my production DB and need to nuke my corrupted test DB. Thanks!
Mike
----- Original Message -----
From: "Tom Lane" <tgl@sss.pgh.pa.us>
To: "Mike Christensen" <imaudi@comcast.net>
Cc: pgsql-general@postgresql.org
Sent: Wednesday, February 18, 2009 3:44:01 PM GMT -08:00 US/Canada Pacific
Subject: Re: [GENERAL] Postgres service fails to start on Windows 2003
Mike Christensen <imaudi@comcast.net> writes:
I'm having problems getting the PostgreSQL service to start. This
started happening after I changed a disk quota to allow for larger
database sizes, and no other configuration has changed.
You moved the Postgres account to some other group, right?
2009-02-18 14:02:51 PST LOG: could not bind IPv4 socket: No error
I'm betting this is actually some kind of permissions issue (with
Windows not being very helpful about letting PG know that). Is there
such a thing as "allowed to connect to the internet" in your account
settings?
regards, tom lane