↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

支持中的版本: 当前版本 (18) / 17 / 16 / 15 / 14
开发中的版本: 19 / 20devel
已结束支持的版本: 13 / 12 / 11 / 10 / 9.6 / 9.5 / 9.4 / 9.3

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。

环境

与大多数其他 PostgreSQL 工具一样,pg_isready 也使用 libpq 支持的环境变量(见第 32.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

报告文档问题

阅读 上游文档. 通过 PostgreSQL 文档反馈表单.