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,需要与应用开发人员进行沟通。

相关推荐
聆听。。花开雨落4 小时前
mybatis的typeHandler 作用
数据库·mybatis
pxzsky5 小时前
PG17数据库安装中分分词插件:pg_jieba
数据库·postgresql·pg_jieba
她说可以呀5 小时前
Redis哨兵
数据库·redis·bootstrap
霸道流氓气质6 小时前
KMS 密钥管理服务(Key Management Service)原理与实践
linux·服务器·数据库
kirs_ur6 小时前
CXL(Compute Express Link)— 内存扩展的未来
服务器·数据库·性能优化
MonolithIoT7 小时前
实战方案|设备备件无人值守仓库:连续化产线运维备件 7×24 小时数字化管控方案
运维·网络·数据库
瞬间&永恒~8 小时前
【MySQL】4-6:在同一个主机上使用 systemd 运行多个 MySQL服务器
服务器·数据库·mysql
心机之蛙qee8 小时前
Redis的主从、哨兵及集群
数据库·redis·缓存
gwf2169 小时前
磨损均衡算法(Wear Leveling)——SSD如何让每块闪存“公平退休“?
运维·数据库·人工智能·python·嵌入式硬件·算法·智能硬件