pgAgent service for PostgreSQL does not run
-
08-02-2021 - |
Question
OS: Windows 10
PostgreSQL 11.4
I Installed PgAgent with Stackbuilder setup.
In Windows services; PostgreServer service is running. However, the pgAgent service is stopped. When I try to start pgAdmin service from there I get this error message:
The PostgreSQL Scheduling Agent - pgAgent service on Local Computer started and then stopped.
Some services stop automatically if they are not in use by other services or programs.
I have the pgAgent service to log On As
-->LocalSystem
(Note, I have also tried to change it to an windows administrator account)
When opening pgAdmin 4
I can see the pgAgent Jobs
tab as well as create jobs.
Acording to the description on this page ,one should create an extension as well. However, when pgAgent was installed , there wasen't copied any extension files to %\PostgreSQL\11\share\extension
so I can not create the extension in pgAdmin
Any advice on how I get the pgAgent service to run my jobs I have createn in pg Admin?
EDIT: On This thread They state that editing pgpass.conf
in c:/user/user/AppData/postgresql
helped. I have no such folder nore file. The only postgres related folders I've found under C:\Users
is C:\Users\user\AppData\Roaming\pgAdmin
EDIT2:
I opened CMD as an admin and run
cd %APPDATA%
to find correct folder.I created the
pgpass.conf
inside newly created folderpostgresql
inappdata
-->C:\Users\user\AppData\Roaming\postgresql\pgpass.conf
.I added that file as a system variable
PGPASSFILE
(Source1 and Source2).
That did not change anything either.
Cholud I do some editting in REDEDIT? Source3
La solution
I'm not sure what I did, but I have the service running now. I guess it is a combination of little of everything
Open CMD as administrator
browse to
pgagent.exe
cd C:\Program Files\PostgreSQL\pgAgent\bin
Remove the pgAgent service (if pgAgent service is installed, but does not work)
pgAgent REMOVE pgAgent
Then I installed the service again.
pgAgent INSTALL pgAgent -u WindowsUser -p WindowsPassword hostaddr=127.0.0.1 dbname=postgres user=postgres password=postgePassword
(Not sure if the following steps are needed but) Open Windows services
There you can confirm the windows account that runs the service.
open up
pgpass.conf
in%APPDATA/postgresql
and add the line127.0.0.1:5432:*:windowsUsername:windowsPassword
add
pgpass.conf
as system variablePGPASSFILE