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

成都幼儿园网站建设2023新闻摘抄十条

成都幼儿园网站建设,2023新闻摘抄十条,开发公司成本费用比例,广州白云做网站的公司目录标题 1. 查看主备状态计算方式:实际情况:举个例子: 2. 查看历史状态3. 分析日志文件4. 查看数据库层面的复制状态5. 检查活动事务6. 检查系统资源7. 检查网络状况8. 检查复制槽状态9. 检查未提交的两阶段事务 要排查 PostgreSQL 备库的延…

目录标题

    • 1. 查看主备状态
      • 计算方式:
      • 实际情况:
      • 举个例子:
    • 2. 查看历史状态
    • 3. 分析日志文件
    • 4. 查看数据库层面的复制状态
    • 5. 检查活动事务
    • 6. 检查系统资源
    • 7. 检查网络状况
    • 8. 检查复制槽状态
    • 9. 检查未提交的两阶段事务

要排查 PostgreSQL 备库的延迟问题,您可以按照以下步骤进行:

1. 查看主备状态

  • 使用 patronictl list 命令:该命令会显示集群中各节点的角色、状态、时间线等信息。

    patronictl list
    

    该命令的输出将包括每个节点的角色、状态、时间线等信息,帮助您了解主备节点的当前状态。
    在这里插入图片描述

patronictl list 是 Patroni 提供的命令,用于显示当前 Patroni 集群的状态和信息。在输出结果中,Lag in MB 表示每个备库(replica)与主库(primary)之间的延迟,单位是 MB(兆字节)。

计算方式:

Lag in MB 通常是基于以下因素来计算的:

  1. WAL日志传输延迟:Patroni 使用 PostgreSQL 的流复制(streaming replication)机制,将主库上的 WAL(Write Ahead Log)日志传输到备库。在备库接收到 WAL 日志后,它会应用这些日志,保持与主库的同步。

  2. 日志差异Lag in MB 主要通过计算主库和备库之间的 WAL 日志差异来得出。这个差异通常由以下几个指标决定:

    • 主库的当前 WAL LSN(Log Sequence Number)
    • 备库已接收到的最新 WAL LSN

    备库的 Lag in MB 计算公式通常如下:

   \[\text{Lag in MB} = \frac{\text{Current WAL LSN} - \text{Replica WAL LSN}}{1024 \times 1024}\]

在这里插入图片描述

这里,Current WAL LSN 是主库当前的 WAL 位置(LSN),Replica WAL LSN 是备库上已应用的最新 WAL 位置。通过计算这两个 LSN 之间的差距,并将其转换为 MB,得出备库的延迟。

  1. 日志传输和应用时间
    • 传输延迟:从主库到备库的 WAL 日志传输时间。
    • 应用延迟:备库将接收到的 WAL 日志应用到数据库的时间。

实际情况:

Lag in MB 是一个近似值,表示备库的延迟量。它并不直接反映实际的数据延迟(即查询的响应时间),而是表示备库与主库之间的 WAL 日志差异。较大的延迟可能意味着备库未及时接收到或应用主库的 WAL 日志。

在实践中,Lag in MB 可以用于:

  • 监控备库同步的健康状况。
  • 发现复制延迟过大的情况。
  • 调整性能优化策略,避免备库滞后过长时间。

举个例子:

假设主库的 WAL LSN 是 0/10000000,而备库的 WAL LSN 是 0/08000000。那么它们之间的差异是 0/10000000 - 0/08000000 = 0/08000000。如果每个 WAL 页的大小是 8KB,那么可以计算出这个差异对应的延迟是:

\[
\text{Lag in MB} = \frac{(0/08000000)}{1024 \times 1024} = \text{具体的 MB 数值}
\]

在这里插入图片描述

这个值会以 Lag in MB 显示出来,通常在 Patroni 集群的状态监控中查看。

SELECT now(),application_name,pg_current_wal_lsn() AS current_wal_lsn,sent_lsn,pg_wal_lsn_diff(pg_current_wal_lsn(), sent_lsn)/1024/1024 AS lag_in_MB
FROM pg_stat_replication;

在这里插入图片描述

2. 查看历史状态

  • 使用 patronictl history 命令:该命令可以帮助您了解集群状态的变化历史,识别可能导致延迟的事件。

    patronictl history
    

    通过查看历史状态,您可以识别出集群状态变化的时间点,帮助定位可能导致延迟的事件。
    在这里插入图片描述

3. 分析日志文件

  • 检查主/备节点的 PostgreSQL 日志文件:日志文件通常位于 PostgreSQL 数据目录下的 pg_log 目录中。

    cd /pg_log
    

    在该目录下,您可以找到以日期命名的日志文件,如 postgresql-<日期>.log postgresql-<日期>.csv

    在这里插入图片描述

    archive_command 和 restore_command 等由PG调用的外部二进制的输出打在 .log 里面

  • 查找与复制相关的错误或警告信息:关注日志中是否有网络连接问题、磁盘空间不足等错误或警告信息。

    grep -i 'replication' postgresql-*.csv
    

    该命令将搜索所有日志文件中包含“replication”字样的行,帮助您快速定位与复制相关的问题。

4. 查看数据库层面的复制状态

  • 在主库上,执行以下 SQL 查询,查看复制状态

    SELECT * FROM pg_stat_replication;
    

    在这里插入图片描述

    SELECT (case pg_is_in_recovery() when 't' then null else pg_wal_lsn_diff(pg_current_wal_lsn(), replay_lsn)::float end)/1024/1024 AS pg_location_diff_MB FROM pg_stat_replication;
    

    在这里插入图片描述
    在这里插入图片描述

    该查询会返回当前复制连接的状态信息,包括复制延迟等。

  • 在备库上,执行以下 SQL 查询,查看复制状态

    SELECT * FROM pg_stat_wal_receiver;
    

    该查询会返回备库接收 WAL 的状态信息,包括接收延迟等。

5. 检查活动事务

  • 在主库上,执行以下 SQL 查询,查看当前活动事务

    SELECT * FROM pg_stat_activity WHERE state = 'active';
    

    长时间运行的活动事务可能会干扰 WAL 复制过程,从而增加复制延迟。

  • 流复制

  • pg_stat_replication

6. 检查系统资源

  • 检查主备节点的 CPU、内存和磁盘 I/O 使用情况

    使用系统监控工具,如 tophtopiostat 等,查看系统资源的使用情况。

    top
    

    该命令将显示系统的实时资源使用情况,帮助您识别是否存在资源瓶颈。

  • top

  • htop

  • iostat

7. 检查网络状况

  • 确保主备节点之间的网络连接稳定,带宽充足

    使用网络监控工具,如 pingtraceroute 等,检查网络延迟和丢包情况。

    ping <备库IP地址>
    

    该命令将测试主库与备库之间的网络连接质量,帮助您识别网络问题。

8. 检查复制槽状态

  • 查看复制槽的状态

    SELECT slot_name, slot_type, database, active, active_pid FROM pg_replication_slots;
    

    如果 active 列为 false,说明复制槽未激活,可能导致 WAL 日志堆积。

9. 检查未提交的两阶段事务

  • 查看未提交的两阶段事务

    SELECT gid, prepared, owner, database, transaction AS xmin
    FROM pg_prepared_xacts
    ORDER BY age(transaction) DESC;
    

    未提交的两阶段事务会导致 WAL 日志无法清理,增加复制延迟。
    在这里插入图片描述

通过以上步骤,您可以全面排查 PostgreSQL 备库的延迟问题,找出可能的原因并采取相应的措施进行解决。

参考链接

  • PostgreSQL如何监控备库延迟_psql从库查看同步延迟
  • PostgreSQL数据库WAL日志空间大小以及不清理的原因深入分析
  • 主备同步存在多长时间的延迟_云数据库RDS
  • PostgreSQL流复制三(延迟备库)
  • 主从之间延迟过大如何优化?
  • PostgreSQL数据库参数优化建议
  • PostgreSQL 检查主从延迟mysql 查看主从延迟
  • 两阶段提交
http://www.dtcms.com/wzjs/371991.html

相关文章:

  • 江西南昌网站制作襄阳seo培训
  • 台州网站怎么推广短视频平台推广
  • 在线查看网站源码武汉seo工厂
  • 国外美容网站品牌全网推广
  • 广州市城市建设档案馆网站衡水seo培训
  • 传媒大学附近网站建设公司网店运营培训
  • 网站建设的收费口碑营销的定义
  • 什么网站可以接图做图超级优化空间
  • 怎么推广自己做的网站百度关键词优化手段
  • 网站制作的相关术语seo短视频网页入口
  • 电子商务网站建设教材短视频精准获客系统
  • 门户网站app开发优化深圳seo
  • 广州企业建站系统模板集客营销软件官方网站
  • 足球哪个网站做的比较好好f123网站
  • 自己做的一个网站怎么赚钱品牌策划公司
  • 深圳市住房和建设委员会网站济南网站优化培训
  • 蒙自网站建设培训机构在哪个平台找
  • 企业网站改版方案百度一下你就知道了
  • 自己设计logo用什么软件seo商城
  • 北京欢迎你网站建设b站视频推广的方法有哪些
  • wordpress首页摘要设置济南seo网站排名优化工具
  • 做响应式网站应该注意什么吸引顾客的营销策略
  • 菏泽seo网络优化工程师招聘信息
  • 海口网站开发师招聘短视频营销策划方案
  • 有什么好的网站做推广的网络营销工程师前景
  • 重庆宣传网站怎么做泉州seo网站排名
  • 网站浮窗制作重庆seo论
  • 在线制作表白网站关键词怎样做优化排名
  • 阿里云可以几个网站直通车推广计划方案
  • 北京seo优化厂家seo站内优化教程