PostgreSQL的查看主从同步状态
PostgreSQL的查看主从同步状态
PostgreSQL 提供了一些系统视图和函数,查看和监控主从同步的状态。
1 在主节点上查看同步状态
pg_stat_replication 视图
在主节点上,可以通过查询 pg_stat_replication 视图来查看复制的详细状态信息,包括每个从节点的同步进度、滞后情况以及连接状态。
postgres=# \d pg_stat_replicationView "pg_catalog.pg_stat_replication"Column | Type | Collation | Nullable | Default
------------------+--------------------------+-----------+----------+---------pid | integer | | | usesysid | oid | | | usename | name | | | application_name | text | | | client_addr | inet | | | client_hostname | text | | | client_port | integer | | | backend_start | timestamp with time zone | | | backend_xmin | xid | | | state | text | | | sent_lsn | pg_lsn | | | write_lsn | pg_lsn | | | flush_lsn | pg_lsn | | | replay_lsn | pg_lsn | | | write_lag | interval | | | flush_lag | interval | | | replay_lag | interval | | | sync_priority | integer | | | sync_state | text | | | reply_time | timestamp with time zone | | |
pid: 进程ID。usesysid: 使用者系统ID。usename: 复制连接的用户名。application_name: 复制连接的应用程序名称,通常每个从节点会设置一个唯一的名字。client_addr: 从节点的IP地址。state: 连接状态,可以是startup,catchup,streaming等。sent_lsn: 主节点最后发送给从节点的WAL记录的位置。write_lsn: 从节点接收到的最远的WAL记录的位置。flush_lsn: 从节点写入磁盘的最远的WAL记录的位置。replay_lsn: 从节点应用的最远的WAL记录的位置。sync_priority: 同步复制节点的优先级。sync_state: 同步状态,可以是async,potential,sync,quorum等。
示例
postgres=# select * from pg_stat_replication;pid | usesysid | usename | application_name | client_addr | client_hostname | client_port | backend_start | backend_xmin | state | sent_lsn | wr
ite_lsn | flush_lsn | replay_lsn | write_lag | flush_lag | replay_lag | sync_priority | sync_state | reply_time
-------+----------+---------+------------------+----------------+-----------------+-------------+-------------------------------+--------------+-----------+-----------+---
--------+-----------+------------+-----------------+-----------------+-----------------+---------------+------------+-------------------------------55877 | 16384 | repmgr | test2 | 192.168.10.101 | | 34636 | 2024-09-15 12:13:48.651404-04 | | streaming | 0/44B8EF0 | 0/
44B8EF0 | 0/44B8EF0 | 0/44B8EF0 | 00:00:00.000237 | 00:00:00.000476 | 00:00:00.000537 | 0 | async | 2024-09-15 12:33:24.543761-04
(1 row)
2 在从节点上查看同步状态
pg_stat_wal_receiver 视图
对从节点,可以通过查询 pg_stat_wal_receiver 视图来查看WAL接收器的状态。
postgres=# \d pg_stat_wal_receiverView "pg_catalog.pg_stat_wal_receiver"Column | Type | Collation | Nullable | Default
-----------------------+--------------------------+-----------+----------+---------pid | integer | | | status | text | | | receive_start_lsn | pg_lsn | | | receive_start_tli | integer | | | received_lsn | pg_lsn | | | received_tli | integer | | | last_msg_send_time | timestamp with time zone | | | last_msg_receipt_time | timestamp with time zone | | | latest_end_lsn | pg_lsn | | | latest_end_time | timestamp with time zone | | | slot_name | text | | | sender_host | text | | | sender_port | integer | | | conninfo | text | | |
pid: 接收器进程ID。status: WAL接收状态。receive_start_lsn: 接收起始的LSN。received_lsn: 已接收的最新的LSN。last_msg_send_time: 主节点发送最后一个消息的时间。last_msg_receipt_time: 从节点接收最后一个消息的时间。latest_end_lsn: 最近接收的WAL记录的LSN。latest_end_time: 最近接收到的WAL记录的时间。
示例
postgres=# select * from pg_stat_wal_receiver;pid | status | receive_start_lsn | receive_start_tli | received_lsn | received_tli | last_msg_send_time | last_msg_receipt_time | latest_end_lsn |latest_end_time | slot_name | sender_host | sender_port | conninfo
-------+-----------+-------------------+-------------------+--------------+--------------+-------------------------------+-------------------------------+----------------+
-------------------------------+-----------+----------------+-------------+------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------------------------------------------------------------87404 | streaming | 0/3000000 | 5 | 0/44C0BF8 | 5 | 2024-09-15 12:35:33.842389-04 | 2024-09-15 12:35:33.842893-04 | 0/44C0BF8 |2024-09-15 12:35:33.842389-04 | | 192.168.10.100 | 5432 | user=repmgr passfile=/home/pg12/.pgpass dbname=replication host=192.168.10.100 port=5432 applic
ation_name=test2 fallback_application_name=walreceiver sslmode=disable sslcompression=0 gssencmode=disable krbsrvname=postgres target_session_attrs=any
(1 row)
跨节点比对状态
为了确保主节点和从节点的状态是一致的,可以比对 pg_stat_replication 中的 sent_lsn 和 pg_stat_wal_receiver 中的 received_lsn。如果两者没有显著滞后,可以认为同步状态正常。
相关文章:
PostgreSQL的查看主从同步状态
PostgreSQL的查看主从同步状态 PostgreSQL 提供了一些系统视图和函数,查看和监控主从同步的状态。 1 在主节点上查看同步状态 pg_stat_replication 视图 在主节点上,可以通过查询 pg_stat_replication 视图来查看复制的详细状态信息,包括…...
Java多态性的理解
方法的覆盖 子类的方法重写了父类的方法,相当于对原来的方法进行了增强,接口就是这样的思想。 属性的隔离(Java中什么情况下都不会属性覆盖,python可能会覆盖) public class Main {public static void main(String[…...
安全工具 | 使用Burp Suite的10个小tips
Burp Suite 应用程序中有用功能的集合 img Burp Suite 是一款出色的分析工具,用于测试 Web 应用程序和系统的安全漏洞。它有很多很棒的功能可以在渗透测试中使用。您使用它的次数越多,您就越发现它的便利功能。 本文内容是我在测试期间学到并经常的主要…...
企业项目中字符串工具类
此工具类暂时包含如下功能: isEmpty()判断字符串是否为空subSpecifiedString()判断字符串是否超出指定长度,超出则截取到指定长度yearMonthToDate()将年月的字符串转成年月日格式 yearMonthToDateTime()将年月的字符串转成年月日时分秒格式 package co…...
下载github patch到本地
以下是几种从 GitHub 上下载以.patch 结尾的补丁文件的方法: 通过浏览器直接下载 打开包含该.patch 文件的 GitHub 仓库。在仓库的文件列表中找到对应的.patch 文件。点击该文件,浏览器会显示文件的内容,在页面的右上角通常会有一个“Raw”…...
C++基础部分代码
C OOP面对对象 this指针 C:各种各样的函数定义 struct C:类》实体的抽象类型 实体(属性,行为)-》ADT(abstract data type) OOP语言的四大特征是什么? 抽象 封装/隐藏 继承 多态 访问限定符:public公有的 private私有的…...
neo4j(spring) 使用示例
文章目录 前言一、neo4j是什么二、开始编码1. yml 配置2. crud 测试3. node relation 与java中对象的关系4. 编码测试 总结 前言 图数据库先驱者 neo4j:neo4j官网地址 可以选择桌面版安装等多种方式,我这里采用的是docker安装 直接执行docker安装命令: docker run…...
链接升级:Element UI <el-link> 的应用
链接升级:Element UI 的应用 一 . 创建文字链接1.1 注册路由1.2 创建文字链接 二 . 文字链接的属性2.1 文字链接的颜色2.2 是否显示下划线2.3 是否禁用状态2.4 填写跳转地址2.5 加入图标 在本篇文章中,我们将深入探索Element UI中的<el-link>组件—…...
简单题26 - 删除有序数组中的重复项(Java)20240917
问题描述: java代码: class Solution {public int removeDuplicates(int[] nums) {if (nums.length 0) return 0; // 处理空数组情况int i 0; // 指向新数组中的最后一个不重复元素for (int j 1; j < nums.length; j) {if (nums[j] ! nums[i]) { …...
DFS:深搜+回溯+剪枝实战解决OJ问题
✨✨✨学习的道路很枯燥,希望我们能并肩走下来! 文章目录 目录 文章目录 前言 一 排列、子集问题 1.1 全排列I 1.2 子集I 1.3 找出所有子集的异或总和 1.4 全排列II 1.5 字母大小写全排列 1.6 优美的排列 二 组合问题 2.1 电话号码的数字组合 …...
命令语境中的“可以”的字词含义分析
摘要 在语言交流中,词汇的使用经常受到语境的影响。本文探讨了“可以”一词在上司与下属之间的互动中所表达的命令含义。通过分析语料和实例,发现“可以”在某些情况下并不传达许可的含义,而是被用作一种隐性命令。本文讨论了这一现象的成因…...
直播相关03-录制麦克风声音, ffmpeg 命名,使用命令行完成录音
一 ffmpeg 命令 ffmpeg arg1 arg2 -i arg3 arg4 arg5ffmpeg 全局参数 输入文件参数 -i 输入文件 输出文件参数 输出文件arg1:全局参数 arg2:输入文件参数 arg3:输入文件 arg4:输出文件参数 arg5:输出文件 二 ffprobe …...
VUE3中ref与reactive
ref:支持所有类型reactive:只支持引用类型(Obj,Array...)两者都是实现数据视图响应式 JS逻辑使用中 ref:需要使用.value reactive:不需要使用.value <el-button click"handle()" type"primary"…...
高职院校人工智能技术和无人机技术实训室建设方案
一、方案背景与需求分析 1.1 人工智能与无人机技术发展概况 人工智能(AI)和无人机技术作为当今科技领域的两大热点,正以前所未有的速度发展和渗透到各行各业中。根据国际数据公司(IDC)的报告,全球人工智能市场规模预计将在2024年…...
x-cmd pkg | shtris: 在终端体验经典的俄罗斯方块游戏
目录 简介首次用户技术特点竞品和相关项目进一步阅读 简介 shtris 是一个由 shell 脚本,参考 俄罗斯方块指南 (2009) 实现的俄罗斯方块游戏。 首次用户 本文的 demo 展现了如何通过 x-cmd 快速启动使用 shtris 。x-cmd也提供了1分钟教程可以帮你快速入门。 技术…...
Linux基础---07文件传输及解决yum安装失效的方法
Linux文件传输地图如下,先选取你所需的场景,若你是需要Linux和Linux之间传输文件就查看SCP工具即可。 一.下载网站文件 前提是有网: 检查网络是否畅通命令:ping www.baidu.com,若有持续的返回值就说明网络畅通。Ctr…...
[项目][WebServer][Makefile Shell]详细讲解
目录 1.Makefile2. build.sh3.test.sh 1.Makefile 为了方便构建项目,并将其发布,使用Makefile来管理构建项目 bin httpserver cgi test_cgi cc g GLD_FLAGS -stdc11 -D DEBUG_SHOW LD_FLAGS $(GLD_FLAGS) -lpthread src main.cc curr $(shell p…...
ElementUI大坑Notification修改样式
默认<style lang"scss" scoped>局部样式,尝试用deep透传也无效 实践成功方法:单独写一个style <style> .el-notification{position: absolute !important;top: 40% !important;left: 40% !important; } </style> 也支持自…...
vivado中的diagram
在 Vivado 中,“Diagram” 选项卡是 IP Integrator 的一部分,它用于创建和编辑 Block Design。Block Design 是一种图形化的设计方法,它允许设计者通过拖放组件(如 IP 核和自定义模块)并连接它们来构建复杂的数字电路设…...
项目实现:云备份②(文件操作、Json等工具类的实现)
云备份 前言文件操作实用工具类设计文件属性的获取文件的读写操作文件压缩与解压缩的实现文件目录操作 Json 实用工具类设计编译优化 前言 如果有老铁不知道当前项目实现的功能是什么的话,可以先移步这篇文章内容: 云备份项目的介绍 其中介绍了云备份项…...
SIM4LIFE Light保姆级教程:手把手搞定第一个人体SAR值仿真(附FDTD模块避坑指南)
SIM4LIFE Light保姆级教程:手把手搞定第一个人体SAR值仿真(附FDTD模块避坑指南) 电磁场仿真在生物医学工程领域扮演着越来越重要的角色,而SIM4LIFE Light作为一款专为人体组织电磁特性研究设计的仿真软件,凭借其内置的…...
JetBrains IDE重置工具终极指南:30天试用无限续杯的完整教程
JetBrains IDE重置工具终极指南:30天试用无限续杯的完整教程 【免费下载链接】ide-eval-resetter 项目地址: https://gitcode.com/gh_mirrors/id/ide-eval-resetter 你是否经历过这样的场景:深夜加班赶项目,JetBrains IDE突然弹出&qu…...
基于jqktrader的自动化交易解决方案:技术架构与实战应用
基于jqktrader的自动化交易解决方案:技术架构与实战应用 【免费下载链接】jqktrader 同花顺自动程序化交易 项目地址: https://gitcode.com/gh_mirrors/jq/jqktrader 自动化交易技术正逐步改变传统量化投资的运作模式,jqktrader作为一款基于Pytho…...
OFA图像描述效果展示:COCO风格caption生成——简洁、准确、自然
OFA图像描述效果展示:COCO风格caption生成——简洁、准确、自然 1. 项目概述 今天要给大家展示一个特别实用的AI工具——基于OFA模型的图像描述生成系统。这个工具能够自动为任何图片生成简洁、准确、自然的英文描述,就像给图片配上了专业的文字说明。…...
Qt5.15.2在RK3588上的多媒体支持问题:如何正确配置GStreamer插件避免‘no service found‘错误
Qt5.15.2在RK3588上的多媒体支持问题:如何正确配置GStreamer插件避免no service found错误 在嵌入式Linux系统上部署Qt多媒体应用时,开发者经常会遇到各种依赖库和插件配置问题。特别是在RK3588这样的高性能ARM平台上,QtMultimedia模块与GStr…...
tao-8k嵌入模型实测:Xinference免配置部署,长文本处理效率翻倍
tao-8k嵌入模型实测:Xinference免配置部署,长文本处理效率翻倍 1. 引言:长文本嵌入的工程挑战 在自然语言处理领域,文本嵌入模型扮演着至关重要的角色。它们将文本转换为高维向量表示,为语义搜索、文档聚类、问答系统…...
如何用3分钟搭建深度学习的漫画翻译流水线?BallonsTranslator深度解析
如何用3分钟搭建深度学习的漫画翻译流水线?BallonsTranslator深度解析 【免费下载链接】BallonsTranslator 深度学习辅助漫画翻译工具, 支持一键机翻和简单的图像/文本编辑 | Yet another computer-aided comic/manga translation tool powered by deeplearning 项…...
服务机器人开发终极指南:从NAO到Pepper的完整编程实战
服务机器人开发终极指南:从NAO到Pepper的完整编程实战 【免费下载链接】awesome-robotics A list of awesome Robotics resources 项目地址: https://gitcode.com/gh_mirrors/aw/awesome-robotics 服务机器人开发是一个融合机械设计、人工智能与编程的跨学科…...
21.【RTL_Synthesis】Analyzing Synthesis Results(综合结果分析)
🔍 分析综合结果:从数字到洞察 我们已经学会了用 Yosys 把 RTL 综合成门级网表,也知道了如何用脚本批量处理不同工艺角。但综合工具跑完之后,我们得到了一堆数字:多少门、多少触发器、面积多大……这些数字到底意味着什…...
Multisim新手必看:用差分放大电路课设,手把手教你搞定仿真与波形分析
Multisim新手必看:用差分放大电路课设,手把手教你搞定仿真与波形分析 第一次打开Multisim时,满屏的元器件和复杂的参数设置确实容易让人望而生畏。记得我大三做模电课设时,光是找齐差分放大电路需要的元件就花了半小时,…...
