pg_isready
pg_isready — check the connection status of aPostgres Pro server
Synopsis
pg_isready [connection-option...] [option...]
Description
pg_isready is a utility for checking the connection status of aPostgres Pro database server. The exit status specifies the result of the connection check.
Options
-ddbname--dbname=dbnameSpecifies the name of the database to connect to.
If this parameter contains an
=sign or starts with a validURI prefix (postgresql://orpostgres://), it is treated as aconninfostring. SeeSection 31.1.1 for more information.-hhostname--host=hostnameSpecifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix-domain socket.
-pport--port=portSpecifies the TCP port or the local Unix-domain socket file extension on which the server is listening for connections. Defaults to the value of the
PGPORTenvironment variable or, if not set, to the port specified at compile time, usually 5432.-q--quietDo not display status message. This is useful when scripting.
-tseconds--timeout=secondsThe maximum number of seconds to wait when attempting connection before returning that the server is not responding. Setting to 0 disables. The default is 3 seconds.
-Uusername--username=usernameConnect to the database as the user
usernameinstead of the default.-V--versionPrint thepg_isready version and exit.
-?--helpShow help aboutpg_isready command line arguments, and exit.
Exit Status
pg_isready returns0 to the shell if the server is accepting connections normally,1 if the server is rejecting connections (for example during startup),2 if there was no response to the connection attempt, and3 if no attempt was made (for example due to invalid parameters).
Environment
pg_isready, like most otherPostgres Pro utilities, also uses the environment variables supported bylibpq (seeSection 31.14).
Notes
It is not necessary to supply correct user name, password, or database name values to obtain the server status; however, if incorrect values are provided, the server will log a failed connection attempt.
Examples
Standard Usage:
$pg_isready/tmp:5432 - accepting connections$echo $?0
Running with connection parameters to aPostgres Pro cluster in startup:
$pg_isready -h localhost -p 5433localhost:5433 - rejecting connections$echo $?1
Running with connection parameters to a non-responsivePostgres Pro cluster:
$pg_isready -h someremotehostsomeremotehost:5432 - no response$echo $?2