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地址

相关推荐
还是做不到嘛\.2 小时前
Dvwa靶场-SQL Injection (Blind)-基于sqlmap
数据库·sql·web安全
不写八个3 小时前
PHP教程004:php链接mysql数据库
数据库·mysql·php
Dylan~~~3 小时前
深度解析Cassandra:分布式数据库的王者之路
数据库·分布式
荒川之神4 小时前
Oracle HR 模式递归函数练习(基于 employees 表)
数据库·oracle
F1FJJ4 小时前
Shield CLI Postgres v0.3.10:当 142 张表挤在一张 ER 图里,我们做了什么
网络·vscode·网络协议·postgresql·开源软件
小陈工4 小时前
2026年3月31日技术资讯洞察:AI智能体安全、异步编程突破与Python运行时演进
开发语言·jvm·数据库·人工智能·python·安全·oracle
杨云龙UP4 小时前
Linux生产环境下Oracle RMAN 备份、核查、清理与验证常用命令整理_20260330
linux·运维·服务器·数据库·oracle
橙子家4 小时前
关于列式存储(Column-base Storage)的几个要点解读
数据库
Mr.45675 小时前
Spring Boot 集成 PostgreSQL 表级备份与恢复实战
java·spring boot·后端·postgresql