Postgresql 中文操作指南

pg_isready

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

Synopsis

pg_isready [ connection-option …​] [ option …​]

Description

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

Options

  • -d _dbname—​dbname=_dbname

    • 指定要连接到的数据库的名称。 dbname 可以是 connection string 。如果是,连接字符串参数将重写任何冲突的命令行选项。

  • -h _hostname—​host=_hostname

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

  • -p _port—​port=_port

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

  • -q_—​quiet_

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

  • -t _seconds—​timeout=_seconds

    • 在尝试连接并返回服务器无响应之前要等待的最大秒数。设为 0 将禁用。默认值为 3 秒。

  • -U _username—​username=_username

    • 以用户 username 而非默认用户连接到数据库。

  • -V_—​version_

    • 打印 pg_isready 版本并退出。

  • -?_—​help_

    • 显示关于 pg_isready 命令行参数的帮助,并退出。

Exit Status

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

Environment

与大多数 PostgreSQL 实用程序一样, pg_isready 也使用 libpq 支持的环境变量(参见 Section 34.15 )。

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

Notes

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

Examples

标准使用方法:

$ 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