更新时间:2025-08-26 GMT+08:00
SQL执行很慢,性能低,有时长时间运行未结束
问题现象
SQL执行很慢,性能低,有时长时间运行未结束。
原因分析
SQL运行慢可从以下几方面进行分析:
处理方法
DWS提供了分析查询和改进查询的方法,并且为用户提供了一些常见案例以及错误处理办法。您可以参考性能调优章节对SQL进行性能调优。常见问题也可以优先参考以下两种方法进行分析:
- 方法一:对表定期做统计优化查询。
如果频繁对表执行DELETE语句删除数据,需要定期对表执行VACUUM FULL:
1
VACUUM FULL table_name;
执行VACUUM FULL语句时需选择空闲时间窗或停止业务时操作。
查询表大小,如果表非常大,而实际只有很少数据,那么应该执行VACUUM FULL对表进行磁盘碎片整理。1 2
SELECT * FROM pg_size_pretty(pg_table_size('tablename')); VACUUM FULL table_name;
方法二:通过PGXC_STAT_ACTIVITY视图查询正在运行的SQL语句信息。
父主题: 集群性能