postgresql数据库日志量异常原因排查

问题:

postgresql数据库 库不大 但每日产生日志量15GB左右
分析:

1 导入日志查看是否有异常高频日志

复制代码
select to_char(t.log_time,'YYYY-MM-DD HH24:MI') as minutes,
 sum ((t.error_severity='LOG')::int) as LOG,
 sum ((t.error_severity='ERROR')::int) as ERROR,
 sum ((t.error_severity='FATAL')::int) as FATAL,
 sum ((t.error_severity is null)::int) as OTHER,
 count(1)
from  bak.postgres_log t
group by to_char(t.log_time,'YYYY-MM-DD HH24:MI')
order by count(1) desc; 

查询后发现除了高峰期之外,数据库连接频率基本稳定 每分钟不到1000个

2 大致浏览日志,查看是否有异常大的字段

发现有异常sql存放的字段很大

在数据库中进一步确认

复制代码
SELECT
  id,
  pg_column_size(context) AS 字节大小,
  pg_column_size(context)/1024 AS KB大小,
   pg_column_size(context)/1024/1024 AS MB大小
FROM test
order by 字节大小 desc

在日志里进一步匹配该sql关键字

复制代码
cat 2026-03-31_000000.csv | grep -i -a test | grep -i "context" | wc -l

分析后发现,异常sql更新字段会把传参一个大约在数据库中存储近10MB的参数
处理方案:

把图片存到文件中 只给数据库存url地址

相关推荐
jiayou641 天前
KingbaseES 表级与列级加密完全指南
数据库·后端
GBASE2 天前
G术时刻 |GBase 8s数据库事务并发控制之封锁技术介绍(下)
数据库
xiezhr2 天前
逛GitHub发现了一款免费的带AI功能的数据库管理工具
数据库·ai编程·dba
吃糖的小孩3 天前
给 QQ AI 机器人设计“可控记忆”:会话摘要、手动长期记忆与角色卡边界
数据库
笃行3504 天前
金仓数据库数据安全双防线:静态存储加密与传输加密实战
数据库
笃行3504 天前
金仓数据库物理备份实战:sys_rman 全流程演练与误覆盖抢救
数据库
笃行3504 天前
金仓数据库逻辑备份实战:从全库导出到 Schema 替换的完整闭环
数据库
SelectDB5 天前
阶跃星辰基于 SelectDB 构建 PB 级 Agent 可观测平台
大数据·数据库·aigc
这个DBA有点耶5 天前
GROUP BY优化全解:如何写出既不丢数据又飞快的分组查询
数据库·mysql·架构