gpt4 book ai didi

postgresql - PostgreSql 中的临时文件

转载 作者:行者123 更新时间:2023-12-04 01:15:40 25 4
gpt4 key购买 nike

我的数据库大小增长到 41GB,但是当我创建备份时它变成 2.4/2.5GB,为什么会有这么大的差异?

我已经执行了一些 vaccum、重新索引等,但大小仍然没有缩小和 它显示 19 GB 临时文件 但是当我入住时C:\Program Files\PostgreSQL\10\data\base\pgsql_tmp文件夹是空的。。

如何删除这些临时文件? 有没有办法减少我的数据库大小?

编辑

db stat result

查询以获取临时文件

SELECT temp_files AS "Temporary files"
, temp_bytes AS "Size of temporary files"
FROM pg_stat_database db;

最佳答案

pg_stat_database 中的值自服务器启动以来是累积的,所以它是 不是 字节数 当前 用过的。这是自重置统计信息以来使用的字节数。

由于这是一个累积数字,它会不断增加并且永远不会缩小,除非您重置统计信息。

您可以使用以下方法重置这些统计信息(作为 super 用户)

select pg_stat_reset();

看来您的查询确实使用了许多临时文件和临时空间。这可能表明您没有给 Postgres 足够的内存(例如 work_memtemp_buffers )但这是一个不同的问题。

这些临时文件也不属于数据库转储的一部分,因为它们仅在查询执行期间使用。

关于postgresql - PostgreSql 中的临时文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54194320/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com