Redrock Postgres 搜索 英文
版本: 9.3 / 9.4 / 9.5 / 9.6 / 10 / 11 / 12 / 13 / 14 / 15 / 16 / 17

pg_isready

pg_isready — 检查 PostgreSQL 服务器的连接状态

语法

pg_isready [connection-option...] [option...]

描述

pg_isready 是用于检查 PostgreSQL 数据库服务器的连接状态的实用程序。退出状态指定连接检查的结果。

选项

-d dbname
--dbname=dbname

指定要连接到的数据库的名称。dbname 可以是连接字符串。如果是这样,连接字符串参数将覆盖任何冲突的命令行选项。

-h hostname
--host=hostname

指定服务器所运行计算机的主机名。如果该值以斜杠开头,则用作 Unix 域套接字的目录。

-p port
--port=port

指定服务器侦听连接的 TCP 端口或本地 Unix 域套接字文件扩展名。默认为 PGPORT 环境变量的值,如果未设置,则默认为编译时指定的端口(通常为 5432)。

-q
--quiet

不显示状态消息。这在编写脚本时很有用。

-t seconds
--timeout=seconds

尝试连接时等待的最大秒数,然后返回服务器无响应。设置为 0 将禁用。默认为 3 秒。

-U username
--username=username

以 user username 的身份连接到数据库,而不是默认方式。

-V
--version

打印 pg_isready 版本并退出。

-?
--help

显示有关 pg_isready 命令行参数的帮助信息并退出。

退出状态

pg_isready 如果服务器正常接受连接,则向 shell 返回 0;如果服务器拒绝连接(例如在启动期间),则返回 1;如果连接尝试没有响应,则返回 2;如果未进行尝试(例如由于无效的参数),则返回 3

环境

pg_isready 与大多数其他 PostgreSQL 实用程序类似,也使用 libpq 支持的环境变量(请参阅 第 32.15 节)。

环境变量 PG_COLOR 指定是否在诊断消息中使用颜色。可能的值为 alwaysautonever

注释

不需要提供正确的用户名、密码或数据库名值来获取服务器状态;但是,如果提供了不正确的值,则服务器将记录连接尝试失败。

示例

标准用法

$ pg_isready
/tmp:5432 - accepting connections
$ echo $?
0

在启动时使用连接参数运行到 PostgreSQL 集群的连接

$ pg_isready -h localhost -p 5433
localhost:5433 - rejecting connections
$ echo $?
1

使用连接参数运行到无响应的 PostgreSQL 集群的连接

$ pg_isready -h someremotehost
someremotehost:5432 - no response
$ echo $?
2