Installing pgAgent v8
pgAgent runs as a daemon on Unix systems, and a service on Windows systems. In most cases it will run on the database server itself - for this reason, pgAgent is not automatically configured when PEM is installed. In some cases however, it may be preferable to run pgAgent on multiple systems, against the same database; individual jobs may be targeted at a particular host, or left for execution by any host. Locking prevents execution of the same instance of a job by multiple hosts.
Database setup
Before using PEM to manage pgAgent, you must create the pgAgent extension in the maintenance database registered with PEM. To install pgAgent on a PostgreSQL host, connect to the postgres
database, and navigate through the Tools
menu to open the Query tool. For server versions 9.1 or later, and pgAgent 3.4.0 or later, enter the following command in the query window, and click the Execute
icon:
This command will create a number of tables and other objects in a schema called 'pgagent'.
The database must also have the pl/pgsql procedural language installed - use the PostgreSQL CREATE LANGUAGE
command to install pl/pgsql if necessary. To install pl/pgsql, enter the following command in the query window, and click the Execute
icon:
Daemon installation on Unix
Note
pgAgent is available in Debian/Ubuntu (DEB) and Redhat/Fedora (RPM) packages for Linux users, as well as source code. See the pgAdmin Website. for more information.
To install the pgAgent daemon on a Unix system, you will normally need to have root privileges to modify the system startup scripts. Modifying system startup scripts is quite system-specific so you should consult your system documentation for further information.
The program itself takes few command line options, most of which are only needed for debugging or specialised configurations:
The connection string is a standard PostgreSQL libpq connection string (see the PostgreSQL documentation on the connection string for further details). For example, the following command line will run pgAgent against a server listening on the localhost, using a database called 'postgres', connecting as the user 'postgres':
Service installation on Windows
Note
pgAgent is available in a pre-built installer if you use EnterpriseDB's PostgreSQL Installers. Use the StackBuilder application to download and install it. If installed in this way, the service will automatically be created and the instructions below can be ignored.
pgAgent can install itself as a service on Windows systems. The command line options available are similar to those on Unix systems, but include an additional parameter to tell the service what to do:
The service may be quite simply installed from the command line as follows (adjust the path as required):
You can then start the service at the command line using net start pgAgent
, or from the Services
control panel applet. Any logging output or errors will be reported in the Application event log. The DEBUG mode may be used to run pgAgent from a command prompt. When run this way, log messages will output to the command window.