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: >> >> Install directory: "C:\PRGS\pgSQL\16" >> DB-Directory: "C:\DB\pgSQL\16\data" >> >> Environment variable "PGDATA" is set to "C:\DB\pgSQL\16\data". >> >> Initialized the database. Then started postgres services using: >> >> c:\PRGS\pgSQL\16\bin\pg_ctl.exe start >> >> Worked nice. Server starts, the serves as expected. But: if I try to >> start the service by "net start pgSQL" I am reported that "pg_ctl.exe" >> could not find "postgres.exe". >> >> What I've tried: >> - added environment variable "PGPATH" pointing to "C:\PRGS\pgSQL\16\bin" >> -> did not help. >> >> - added "C:\PRGS\pgSQL\16\bin" to path. -> did not help either, even >> after rebooting. I've added it to system path. >> >> Are paths somewhere within some configuration file or registry entry? >> And set to standard install locations? > > How exactly is the Windows service defined? > Perhaps you need to use an absolute path for the executable. Servicename: postgresql-x64-16 Name: postgresql-x64-16-PostgreSQL Server 16 Comment: Provides relational database storage Path: "C:\PRGS\pgSQL\16\bin\pg_ctl.exe" runservice -N "postgresql-x64-16" -D "C:\DB\pgSQL\16\data" -w Type: Automatic Account: Networkservice Password: set Dependencies:RPC, DCOM-Service, RPC-Endpoint Errors found within system logs: pg_ctl: could not find program 'postgres.exe' Seems, since "C:\PRGS\pgSQL\16\bin" is in system path, it does not search there at all: # dir "C:\PRGS\pgSQL\16\bin" [...] Mi, 13.Nov.2024 13:24 123.392 pg_ctl.exe [...] Mi, 13.Nov.2024 13:24 8.659.968 postgres.exe Any way to tell a service in Windows to use a path? Any registry key to assign a path to? # sc qc "postgresql-x64-16" [SC] QueryServiceConfig ERFOLG SERVICE_NAME: postgresql-x64-16 TYPE : 10 WIN32_OWN_PROCESS START_TYPE : 2 AUTO_START ERROR_CONTROL : 1 NORMAL BINARY_PATH_NAME : "C:\PRGS\pgSQL\16\bin\pg_ctl.exe" runservice -N "postgresql-x64-16" -D "C:\DB\pgSQL\16\data" -w LOAD_ORDER_GROUP : TAG : 0 DISPLAY_NAME : postgresql-x64-16 - PostgreSQL Server 16 DEPENDENCIES : RPCSS SERVICE_START_NAME : NT AUTHORITY\NetworkService -- Thomas