Re: Postgres service not starting on windows after install if not installed into standard locations

From: Adrian Klaver <adrian(dot)klaver(at)aklaver(dot)com>
To: Thomas Schweikle <tschweikle(at)bfs(dot)de>, "pgsql-general(at)lists(dot)postgresql(dot)org" <pgsql-general(at)lists(dot)postgresql(dot)org>
Subject: Re: Postgres service not starting on windows after install if not installed into standard locations
Date: 2024-11-21 16:45:58
Message-ID: d56c75a8-8fdd-4e4d-bf54-46674543e0f4@aklaver.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

On 11/21/24 06:10, Thomas Schweikle wrote:
> Am Mi., 20.Nov..2024 um 18:15:42 schrieb Adrian Klaver:
>> On 11/20/24 05:26, Thomas Schweikle wrote:
>>> Am Mo., 18.Nov..2024 um 19:43:36 schrieb Laurenz Albe:
>>>> On Mon, 2024-11-18 at 17:22 +0000, Thomas Schweikle wrote:
>>>>> Had installed PostgreSQL 16.5 on Windows 10:

>> Did you change settings during the install?
>
> I called the installer with:
>
> .\postgresql-16.5-1-windows-x64.exe
>
> Then changed install path to: "C:\PRGS\pgSQL"
> And database path to: "C:\DB\pgSQL"
>
> After a while postgres got installed into "C:\PRGS\pgSQL\16" and the
> database path was created: "C:\DB\pgSQL\16\data", but the database was
> not created. Calling pg_initdb did the job and created the database
> within the given folder.
>
> Calling "pg_ctl start" gave a message, that "pg_ctl.exe" could not find
> "postgres.exe" -- I prepended "C:\PRGS\pgSQL\16\bin" to %PATH%. Next
> thing was that pg_ctl could not find the just, with pg_initdb, created
> database. So I've set up PGDATA to point to "C:\DB\pgSQL\16\data". Both
> within the global system environment of windows.
>
> Tried again to start postgres via "pg_ctl start". This time postgres got
> up and running instantly.
>
> Then stopped postgres again: "pg_ctl.exe stop". And tried it using "net
> start postgresql-x64-16". This failed. "pg_ctl.exe" called could not
> find "postgres.exe".
>
> Looking at the logs "pg_ctl.exe" stated it could not find "postgres.exe"
> again. Since %PGDATA% and %PATH% where set within system environment
> these are to be global and shall be active for services too.
>
> Looking closer on "pg_ctl.exe" I found it using a build in path of
> "C:\Program files\PostgreSQL\16\bin\postgres.exe", regardless of any
> environment variables set if started without any of stdout, stdin,
> stderr, what is the case if it is started as a service.
>

Looks like your choices are:

1) Keep the default paths during the install.

2) Raise an issue here:

https://github.com/EnterpriseDB/edb-installers/issues

--
Adrian Klaver
adrian(dot)klaver(at)aklaver(dot)com

In response to

Browse pgsql-general by date

  From Date Subject
Next Message Steeve Boulanger 2024-11-21 17:29:26 Database stats ( pg_stat_database.stats_reset ) get reset on daily basis - why?
Previous Message Levente Birta 2024-11-21 14:22:35 Re: Update to postgresql 14.14