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。
与大多数其他PostgreSQL工具一样, pg_isready也使用libpq 支持的环境变量(见Section 32.15)。
环境变量PG_COLOR指定是否在诊断消息中使用颜色。可能的 值为always、auto和 never。
要获得服务器状态,无需提供正确的用户名、密码或数据库名。不过,如果提供 了不正确的值,服务器会记录一次失败的连接尝试。
标准用法:
$pg_isready/tmp:5432 - accepting connections$echo $?0
使用连接参数检查一个处于启动阶段的 PostgreSQL集簇:
$pg_isready -h localhost -p 5433localhost:5433 - rejecting connections$echo $?1
使用连接参数检查一个无响应的 PostgreSQL集簇:
$pg_isready -h someremotehostsomeremotehost:5432 - no response$echo $?2
如果您发现文档中有不正确的内容、与您使用特定功能的经验不符或需要进一步说明,请使用此表单来报告文档问题。