pgsql_tmp文件夹体积快速增加

文章目录

环境

系统平台:N/A

版本:4.1.1

症状

/xxx/data/base/pgsql_tmp 该文件夹下,临时文件数量及体积快速增加。重启数据库会使临时文件被删除,一段时间后临时文件再次出现爆满的情况。

问题原因

执行复杂SQL未能正常结束,导致产生的临时文件未自动删除,临时文件数量和体积增加占用了大量磁盘空间。

解决方案

根据文件的命名方式,通过pid查询产生临时文件的SQL。

sql 复制代码
-rw------- 1 highgo highgo 3.7M 5月  14 16:09 pgsql_tmp2542.0

-rw------- 1 highgo highgo  19M 5月  14 16:09 pgsql_tmp2456.0

-rw------- 1 highgo highgo  16M 5月  14 16:09 pgsql_tmp2541.0

-rw------- 1 highgo highgo 152M 5月  14 16:09 pgsql_tmp2534.1

-rw------- 1 highgo highgo 270M 5月  14 16:09 pgsql_tmp2484.1

-rw------- 1 highgo highgo  90M 5月  14 16:09 pgsql_tmp2463.1

-rw------- 1 highgo highgo 144M 5月  14 16:09 pgsql_tmp2459.1

-rw------- 1 highgo highgo 165M 5月  14 16:09 pgsql_tmp2532.1

-rw------- 1 highgo highgo 192M 5月  14 16:09 pgsql_tmp2524.1

-rw------- 1 highgo highgo  98M 5月  14 16:09 pgsql_tmp2461.1



[highgo@localhost pgsql_tmp]$ du -sh pgsql_tmp2484.1

387M    pgsql_tmp2484.1

[highgo@localhost pgsql_tmp]$ du -sh pgsql_tmp2524.1

359M    pgsql_tmp2524.1



highgo=# select * from pg_stat_activity where pid='2484';

-[ RECORD 1 ]----+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

datid            | 16386

datname          | test

pid              | 2484

usesysid         | 16384

usename          | test

application_name | PostgreSQL JDBC Driver

client_hostname  | 

client_port      | 42366

backend_start    | 2019-05-14 16:06:34.475507+08

xact_start       | 2019-05-14 16:06:48.812548+08

query_start      | 2019-05-14 16:06:48.814563+08

state_change     | 2019-05-14 16:06:48.814565+08

waiting          | f

state            | active

backend_xid      | 

backend_xmin     | 29879732

query            | SELECT XXX;

highgo=# select * from pg_stat_activity where pid='2524';

-[ RECORD 1 ]----+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

datid            | 16386

datname          | test

pid              | 2524

usesysid         | 16384

usename          | test

application_name | PostgreSQL JDBC Driver

client_hostname  | 

client_port      | 53276

backend_start    | 2019-05-14 16:06:34.608915+08

xact_start       | 2019-05-14 16:07:25.773803+08

query_start      | 2019-05-14 16:07:25.779867+08

state_change     | 2019-05-14 16:07:25.779869+08

waiting          | f

state            | active

backend_xid      | 

backend_xmin     | 29884693

query            | SELECT XXX;



highgo=# select now();



 2019-05-14 16:13:31.244285+08

根据pid查询到,产生临时文件的语句为同一条SQL,需要与应用开发人员进行沟通。

相关推荐
Poo_Chai20 分钟前
QT emit信号后完整处理流程,包括槽函数响应流程
java·开发语言·数据库
这个DBA有点耶1 小时前
从DBA到数据架构师(五):数据架构演进中的技术债务管理
数据库·程序人生·云原生·架构·dba·数据库管理员
Bruce_Liuxiaowei2 小时前
基于微步在线威胁情报的公网 IP 攻击迹象监测:threatbook_query 脚本全解析与 BruceSec 平台整合实践
数据库·tcp/ip·安全·网络安全·智能体
码农颜2 小时前
5.6.2 ⾏级锁死锁
数据库·sql·oracle
ChaHae-In3 小时前
MyBatis动态SQL与MyBatis-Plus高效开发指南
数据库·oracle·mybatis
冰暮流星3 小时前
mysql之分组查询
数据库·mysql
倒流时光三十年3 小时前
PostgreSQL Semi-Join(半连接)通俗讲解
数据库·postgresql
NiceCloud喜云4 小时前
腾讯云国际版云数据库选型:MySQL、Redis 怎么按业务架构来判断
数据库·mysql·腾讯云
ew452184 小时前
MySQL JOIN 关联语法、差异、标准用法、经典坑点汇总
数据库·mysql
Rain的Java大神之路5 小时前
线上接口负载满了如何解决
java·数据库·redis·后端·缓存·面试·架构