PostgreSQL查询花费的时间太长,无法在LINUX服务器上执行

问题描述 投票:-1回答:1

我最近将PostgreSQL数据库部署到Linux服务器,其中一个存储过程大约需要24到26秒才能获取结果。以前,我已将PostgreSQL数据库部署到Windows服务器,并且相同的存储过程仅花费大约1到1.5秒。

在两种情况下,我都使用相同的数据库测试了相同的数据量。并且两个服务器都具有相同的配置,例如RAM,处理器等。

在Linux服务器上执行我的存储过程时,CPU使用率达到100%。

Windows执行计划:

**enter image description here**

Linux执行计划:

enter image description here

让我知道您是否对此有任何解决方案。

linux postgresql .net-core postgresql-12
1个回答
0
投票

罪魁祸首似乎在

billservice.posid = pos.posid

更具体地说,它在pos表上执行序列扫描。应该在做索引扫描。

enter image description here

检查数据库中这两个文件上是否有索引。

© www.soinside.com 2019 - 2024. All rights reserved.