Database 收缩RDS实例上的pg_toast
我有一个Postgres 9.6 RDS实例,它每天增长1GB。我们已经对pg_toast的相关关系进行了一些优化,但是pg_toast的大小没有改变 Autovacuum已启用,但由于Autovacuum/VACUUM FREEZE不会回收空间,而且真空满度会进行独占锁定,因此我不再确定最佳方法是什么 表中的数据是我们用户体验的核心,尽管下面的方法很有意义,但它会带走我们的用户希望在整个过程中看到的数据 还有什么其他方法可以缩小pg_吐司 下面是一些关于表大小的数据。您可以在前两幅图像中看到,关系Database 收缩RDS实例上的pg_toast,database,postgresql,amazon-rds,vacuum,autovacuum,Database,Postgresql,Amazon Rds,Vacuum,Autovacuum,我有一个Postgres 9.6 RDS实例,它每天增长1GB。我们已经对pg_toast的相关关系进行了一些优化,但是pg_toast的大小没有改变 Autovacuum已启用,但由于Autovacuum/VACUUM FREEZE不会回收空间,而且真空满度会进行独占锁定,因此我不再确定最佳方法是什么 表中的数据是我们用户体验的核心,尽管下面的方法很有意义,但它会带走我们的用户希望在整个过程中看到的数据 还有什么其他方法可以缩小pg_吐司 下面是一些关于表大小的数据。您可以在前两幅图像中看到,
评分\u响应core
与pg\u toast关联
自动真空设置
该特定pg_吐司当前运行的自动真空过程的结果。这可能会有帮助。
真空(完全)
是PostgreSQL提供的减少表大小的唯一方法
臃肿的吐司桌对你来说是个问题吗?TOAST表总是通过TOAST索引访问的,因此膨胀不应该是性能问题
我知道有两个项目只提供了一个短的ACCESS EXCLUSIVE
锁来进行表重组,即and,但您可能无法在Amazon RDS数据库中使用它们
为了防止问题进一步恶化,您应该首先尝试将受影响表的autovacuum\u vacuum\u成本限制
提高到2000,如果这不起作用,请将autovacuum\u vacuum\u延迟
降低到0。您可以使用ALTER TABLE
更改单个表的设置。VACUUM(FULL)
是PostgreSQL提供的减小表大小的唯一方法
臃肿的吐司桌对你来说是个问题吗?TOAST表总是通过TOAST索引访问的,因此膨胀不应该是性能问题
我知道有两个项目只提供了一个短的ACCESS EXCLUSIVE
锁来进行表重组,即and,但您可能无法在Amazon RDS数据库中使用它们
为了防止问题进一步恶化,您应该首先尝试将受影响表的
autovacuum\u vacuum\u成本限制
提高到2000,如果这不起作用,请将autovacuum\u vacuum\u延迟
降低到0。您可以使用ALTER TABLE
更改单个表的设置。pg_-repack仍然不允许减小RDS中TOAST段的大小。
在RDS中,我们不能使用超级用户权限运行pg_repack,我们必须使用“-no superuser check”选项。这样,它将无法访问pg_toast.*表。pg_repack仍然不允许减小RDS中toast段的大小。 在RDS中,我们不能使用超级用户权限运行pg_repack,我们必须使用“-no superuser check”选项。这样,它将无法访问pg_toast.*表。pg_repack对RDS有效:pg_repack对RDS有效: