Postgresql碎片整理

创建pgstattuple 扩展 

CREATE EXTENSION pgstattuple

 获取表的元组(行)信息,包括空闲空间的比例和行的平均宽度

SELECT * FROM pgstattuple('表名');

 

 查看表和索引大小

SELECT pg_relation_size('表名'), pg_relation_size('索引名称');

 

清理碎片方法

VACUUM:

VACUUM FULL 会对表进行全面的清理和重组,包括删除过期的行版本、回收空间并整理索引。这个操作会锁定表,因此也会导致较长的停机时间。与 REINDEX 不同的是,VACUUM FULL 不仅会整理索引碎片,还会对表的数据进行整理。

VACUUM FULL 表名;

 CLUSTER:

CLUSTER 命令会根据指定的索引对表进行重新排序,从而使表的数据和索引都变得更加紧凑。这个操作也会锁定表,并且需要足够的磁盘空间来临时存储排序后的结果。

CLUSTER 表名 USING 索引名称;

清理后:

free_percent 碎片率明显降低 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值