PostgreSQL9.3 将新增 pg_isready
客户端工具,用来测试 PostgreSQL 服务连接状态。运行 pg_isready
命令后,产生以下四种返回结果之一:
- 0: 服务能正常响应连接;
- 1: 服务拒绝连接(比如 PostgreSQL 启动过程中);
- 2: 服务收不到连接响应;
- 3: 没有尝试连接(例如 输入非法连接参数)
根据以上返回结果,简单测试下。
pg_isready 参数
1 |
[pg93@server1 tf]$ pg_isready --help |
连接正常
1 |
[pg93@server1 tf]$ pg_isready -h 127.0.0.1 -p 1925 |
连接无响应
1 |
[pg93@server1 tf]$ pg_isready -h 127.0.0.1 -p 1922 |
连接参数不对
[pg93@server1 tf]$ pg_isready -h 127.0.0.1 -a
pg_isready: invalid option -- a
Try "pg_isready --help" for more information.
[pg93@server1 tf]$ echo $?
3
总结
显然用 pg_isready
探测 PostgreSQL 服务状态非常简单,容易,这比其它探测方式,例如 select 1
要好些。
参考
- http://wiki.postgresql.org/wiki/What’s_new_in_PostgreSQL_9.3
- http://www.postgresql.org/docs/9.3/static/app-pg-isready.html
原创文章,作者:kirin,如若转载,请注明出处:https://blog.ytso.com/tech/database/237964.html