当前位置: 首页 > news >正文

PostgreSQL自带的命令行工具06- pg_isready

PostgreSQL自带的命令行工具06- pg_isready

基础信息
OS版本:Red Hat Enterprise Linux Server release 7.9 (Maipo)
DB版本:16.2
pg软件目录:/home/pg16/soft
pg数据目录:/home/pg16/data
端口:5777

pg_isready 是 PostgreSQL 中的一个命令行工具,用来检查 PostgreSQL 服务器是否可以接收连接。这个命令通常用于脚本中,以自动化地检查数据库服务的状态,特别是在启动脚本、监控系统或在持续集成流程中等待数据库服务准备就绪的场景。

通过help查看帮助文档。

[pg16@test ~]$ pg_isready --help
pg_isready issues a connection check to a PostgreSQL database.Usage:pg_isready [OPTION]...Options:-d, --dbname=DBNAME      database name-q, --quiet              run quietly-V, --version            output version information, then exit-?, --help               show this help, then exitConnection options:-h, --host=HOSTNAME      database server host or socket directory-p, --port=PORT          database server port-t, --timeout=SECS       seconds to wait when attempting connection, 0 disables (default: 3)-U, --username=USERNAME  user name to connect asReport bugs to <pgsql-bugs@lists.postgresql.org>.
PostgreSQL home page: <https://www.postgresql.org/>

使用方式

基本的命令格式如下:

pg_isready [选项]

你可以使用不同的选项来指定要检查的 PostgreSQL 服务器的详细信息,比如主机、端口、用户名和数据库名称。

常用选项

  • -h--host=HOSTNAME:指定要连接的服务器的主机名。默认是本地主机。
  • -p--port=PORT:指定服务器侦听的端口。默认端口是 5432。
  • -U--username=USERNAME:指定连接数据库的用户名。默认是当前的用户。
  • -d--dbname=DBNAME:指定连接测试的数据库名。默认是与用户名相同的数据库。
  • -t--timeout=SECS:在报告失败之前等待连接成功的最大秒数。默认没有超时(等待无限长)。
  • -V--version:输出 pg_isready 的版本信息。
  • -?--help:显示帮助信息。

输出状态

pg_isready 通过退出状态码来指示服务器的准备状态:

  • 0:服务器正在运行并且可以接收连接。
  • 1:服务器正在运行,但是拒绝连接(可能是因为达到了最大连接数,或者是在维护模式)。
  • 2:无法连接到服务器。这可能是因为服务器没有运行,或者连接详情(比如主机名或端口)不正确。
  • 3:没有尝试连接(通常是因为命令行选项错误)。

示例

检查本地主机上默认端口的 PostgreSQL 服务器状态:

[pg16@test ~]$ pg_isready
/tmp:5777 - accepting connections

检查特定主机192.168.10.99 和端口5777上的服务器状态:

[pg16@test ~]$ pg_isready -h 192.168.10.99 -p 5777
192.168.10.99:5777 - accepting connections

检查特定数据库white和用户postgres的连接状态:

[pg16@test ~]$ pg_isready -d white -U postgres
/tmp:5777 - accepting connections

pg_isready 工具特别适用于那些需要编程方式来确认数据库服务是否就绪的场景,例如,在自动化部署或健康检查脚本中。

谨记:心存敬畏,行有所止。

http://www.lryc.cn/news/341443.html

相关文章:

  • 【请投票】嘉立创EDA中LED发光二极管是否应有统一的引脚定义?
  • LT6911UXB HDMI2.0 至四端口 MIPI DSI/CSI,带音频 龙迅方案
  • 网络培训议题@2
  • linux文本三剑客之sed
  • nginx封禁恶意IP
  • 「PHP系列」PHP MySQL 简介及运用
  • 深度学习论文: XFeat: Accelerated Features for Lightweight Image Matching
  • C++之Eigen库基本使用
  • 2024年 Java 面试八股文——SpringBoot篇
  • C/C++的指针、万能指针、常量指针和指针常量
  • 【讲解下如何解决一些常见的 Composer 错误】
  • qq空间:图片批量下载js脚本工具,javascript批量下载图片
  • 滑动验证码登陆测试编程示例
  • 爬取89ip代理、 爬取豆瓣电影
  • XBoot:基于Spring Boot 2.x的一站式前后端分离快速开发平台
  • 24年最新抖音、视频号0成本挂机,单号每天收益上百,可无限挂
  • Day31:单元测试、项目监控、项目部署、项目总结、常见面试题
  • Flutter笔记:使用Flutter私有类涉及的授权协议问题
  • 面试过程种遇到的面试题收集
  • Vue学习:21.mixins混入
  • 上传文件到 linux
  • NEO 学习之session7
  • 毕业设计uniapp+vue有机农产品商城系统 销售统计图 微信小程序
  • php使用Canal监听msyql
  • metabase部署与实践
  • nacos v2.2.3 docker简单安装使用
  • java设计模式-生成器模式
  • 《前端面试题》- TypeScript - TypeScript的优/缺点
  • 微服务---feign调用服务
  • 刷题笔记 - 滑动窗口