dump的文件 查看pg_PostgreSQL 逻辑复制异常引发Pg_wal目录WAL文件膨胀一例

cb88cc2627dbdf50b6925e400aba2598.png

原文: https://postgres.fun/20200628070600.html

故障现象

前几天一位社区朋友咨询一个PostgreSQL的WAL文件膨胀案例,他们有个生产库最近几天pg_wal目录的WAL文件爆涨到了7万多个,把硬盘空间撑满,造成数据库故障无法访问。

为了应急,这位朋友删除了pg_wal目录下十天前的wal文件,将硬盘空间使用率降下来,使得数据库恢复,但pg_wal目录下的WAL文件依然涨得很快。

数据库环境信息如下:

数据库版本: PostgreSQL 11.2
数据库大小: 大于1TB
操作系统: CentOS 7.4
硬件环境: HPE DL560 gen10 + 全闪存(3par 8440)
其它信息: 单实例,配置了逻辑复制

排查过程

首先,pg_wal目录下的wal文件为在线WAL日志,不能删除,删除后数据库大概率会故障,这位朋友删除了pg_wal目录10天前的WAL文件,数据库居然还活着,我表示非常吃惊。

既然数据库还活着,已提醒他做好数据库备份,以防万一。

关于WAL文件膨胀,我们的排查步骤如下: 1、首先排查数据库pg_log日志文件,没有发现有价值的信息。

2、查看数据库活动会话,排查是否有长事务和慢查询,没有发现长事务和慢查询。

3、查看数据库主机性能,CPU、内存使用率正常,数据库负载正常。

4、查看数据库归档情况,发现数据库归档正常,归档相关参数如下:

archive_mode = on       # enables archiving; off, on, or always
                # (change requires restart)
archive_command = 'cp --backup %p  /log/archive_log/%f'     # command to use to archive a logfile segment

5、查看WAL相关参数设置,如下:

wal_keep_segments = 0   # in logfile segments; 0 disables
checkpoint_timeout = 5min       # range 30s-1d

发现 wal_kee

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值