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
以用户
username
而不是默认用户连接到数据库。-V
--version
打印 pg_isready 版本并退出。
-?
--help
显示有关 pg_isready 命令行参数的帮助,然后退出。
退出状态
如果服务器正常接受连接,pg_isready会向 shell 返回0
;如果服务器拒绝连接(例如在启动期间),则返回1
;如果连接尝试没有响应,则返回2
;如果未进行尝试(例如由于参数无效),则返回3
。
环境
pg_isready
与大多数其他PostgreSQL实用程序一样,也使用libpq支持的环境变量(请参阅第 34.15 节)。
环境变量PG_COLOR
指定是否在诊断消息中使用颜色。可能的值为always
、auto
和never
。
备注
无需提供正确的用户名、密码或数据库名称值来获取服务器状态;但是,如果提供了不正确的值,服务器将记录失败的连接尝试。
示例
标准用法
$ 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