pg_isready
Name
pg_isready -- 检查一个
PostgreSQL服务器的连接状态
Synopsis
pg_isready [connection-option...] [option...]
描述
   pg_isready是一个用来检查一个PostgreSQL数据库服务器的连接状态的工具。其退出状态指定了连接检查的结果。
  
选项
- -d dbname
 --dbname=dbname
-        指定要连接的数据库名。
       -        如果这个参数包含一个=记号或者以一个合法的URI前缀(postgresql://或postgres://)开始,它会被当作一个conninfo字符串。详见Section 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。
  
环境
   和大部分其他PostgreSQL工具相似,pg_isready也使用libpq(见Section 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