暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

PostgreSQL 9.4.4 上文件系统使用率高告警排查

原创 柚子身上依 2024-07-23
169

适用范围

PostgreSQl 9.4.4 版本

问题概述

dsmart监控软件推送PG数据库服务器文件系统超过90%告警,进行排查;联系应用系统负责人说进行了大批量的数据清理操作

问题分析

1.检查占用空间大的目录

因为应用人员说清理了大量数据,所以先检查了xlog 日志的大小
主库 xlog 日志空间占用了 80G,并且xlog的日志最早时2023年产生的

$ du -sh /pgdata/data/pg_xlog
80G /pgdata/data/pg_xlog

查看清理时间段产生的日志达到40G,说明日志突增
$ ls -l /pgdata/data/pg_xlog/|grep 00000001|grep 'Jul 19 09'|awk '{i=$5;sum+=i}END{print sum}'
40G

备库 xlog 日志空间占用了 1.7G

$ du -sh /pgdata/data/pg_xlog
1.7G /pgdata/data/pg_xlog

2.检查流复制

异步流复制,同步基本没延迟
image.png

3.检查事务槽

检查没有配置事务槽
image.png

4.检查主库运行日志存在

分析日志发现归档无法成功,不能创建文件
284b3d84b1e3e956f8a4a33ec7f0631.jpg

检查pg_xlog/archive_status 目录
存在大量的 .ready 文件,说明大量的xlog日志未归档成功

5.检查归档命令及路径

210ef388abd5c3c16ec08e1325c2354.jpg

竟然没有创建归档路径,不知道之前谁搞的

$ cd /pgdata/pg_archive 
-bash: cd: /pgdata/pg_archive: No such file or directory

解决方案

$ mkdir -p /pgdata/pg_archive

image.png
创建归档路径后,日志归档成功,pg_xlog 目录最终降低到了1.7G,并编写了归档日志定时清理脚本

总结

  1. archive_mode设置为on时,archive_commnd 命令路径不存在或者archive_command 命令为空白会导致归档失败,pg_xlog 占用空间持续增长不释放
  2. 如果不想进行归档占用空间,可以设置archive_command=’/bin/true’ ,在需要归档时在进行设置具体的归档路径

参考文档

最后修改时间:2024-07-23 17:15:58
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论