pgsql_tmp文件夹体积快速增加

本文详细描述了在数据库版本4.1.1中,因复杂SQL执行异常导致的临时文件堆积问题。症状表现为/pgsql_tmp目录下临时文件数量及体积激增,重启数据库虽能暂时清理,但问题反复出现。通过对文件名解析,定位到产生问题的SQL语句,为后续问题解决提供了关键线索。

目录

环境

症状

问题原因

解决方案

环境

系统平台:N/A

版本:4.1.1

症状

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

问题原因

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

解决方案

根据文件的命名方式,通过pid查询产生临时文件的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 ]----+-------------------------------------------------------------------------

等多解决方案请登录【瀚高技术支持平台】 查看瀚高技术支持平台

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值