pg_isready
名称
pg_isready -- 检查
PostgreSQL服务器的连接状态
大纲
pg_isready [connection-option...] [option...]
描述
pg_isready是检查PostgreSQL
数据库服务器连接状态的一个实用工具。退出状态说明连接检查的结果。
选项
- -d dbname
 --dbname=dbname
- 声明要连接的数据库名。 - 如果该参数包含一个=号或者以一个有效的URI
前缀(postgresql://或postgres://)开头,
那么将它看做一个conninfo字符串。
参阅第 31.1.1 节获取更多信息。 
- -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返回0
到shell;如果服务器拒绝连接(例如在启动期间),那么返回1;
如果连接尝试没有响应,那么返回2;如果没有做任何尝试
(例如由于无效的参数)则返回3。
环境
pg_isready像大多数其他PostgreSQL工具一样,
也使用libpq支持的环境变量(参阅第 31.14 节)。
注意
选项--dbname和--username可以用来避免日志中无端的错误消息,
但不是适当的功能所必需的。
例子
标准用法:
$ 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