OS:Windows 10
PostgreSQL 11.4
StackbuilderセットアップでPgAgentをインストールしました。
Windowsサービス; PostgreServerサービスが実行されています。ただし、pgAgentサービスは停止しています。そこからpgAdminサービスを開始しようとすると、次のエラーメッセージが表示されます。
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.
PgAgentサービスをlog On As
-> LocalSystem
に設定しています(注、Windows管理者アカウントに変更しようとしました)。
pgAdmin 4
を開くと、pgAgent Jobs
タブが表示され、ジョブを作成できます。
このページの説明 に従って、拡張機能も作成する必要があります。ただし、pgAgentがインストールされたときに、拡張ファイルが%\PostgreSQL\11\share\extension
にコピーされなかったため、pgAdminで拡張を作成できません
PgAdminサービスで作成したジョブをpgAgentサービスで実行する方法に関するアドバイスはありますか?
EDIT:オン このスレッドpgpass.conf
のc:/user/user/AppData/postgresql
の編集が役立つと述べています。そのようなフォルダnoreファイルはありません。 C:\Users
で見つかったpostgres関連のフォルダはC:\Users\user\AppData\Roaming\pgAdmin
のみです
EDIT2:
CMDを管理者として開き、cd %APPDATA%
を実行して正しいフォルダを見つけました。
postgresql
-> pgpass.conf
に新しく作成したフォルダーappdata
内にC:\Users\user\AppData\Roaming\postgresql\pgpass.conf
を作成しました。
それでも何も変わりませんでした。
Cholud REDEDITで編集を行いますか? ソース
何をしたかわかりませんが、現在サービスを実行しています。それはほとんどすべての組み合わせだと思います
管理者としてCMDを開く
pgagent.exe
を参照
cd C:\Program Files\PostgreSQL\pgAgent\bin
PgAgentサービスを削除します(pgAgentサービスはインストールされているが機能しない場合)。
pgAgent REMOVE pgAgent
次に、サービスを再インストールしました。
pgAgent INSTALL pgAgent -u WindowsUser -p WindowsPassword hostaddr=127.0.0.1 dbname=postgres user=postgres password=postgePassword
(次の手順が必要かどうかはわかりませんが)Windowsサービスを開きます
そこで、サービスを実行するWindowsアカウントを確認できます。
pgpass.conf
の%APPDATA/postgresql
を開き、行を追加します
127.0.0.1:5432:*:windowsUsername:windowsPassword
システム変数としてpgpass.conf
を追加しますPGPASSFILE