gpt4 book ai didi

postgresql - Postgres 资源使用统计和配置

转载 作者:行者123 更新时间:2023-11-29 13:19:35 25 4
gpt4 key购买 nike

我使用的是 postgres 服务器 9.4。从 pg_admin 或 psql 工具,我可以执行 SHOW ALL; 这将给我 postgres 服务器的配置。例如 shared_buffers 是 8GB 或者 effective_cache_size 是 24GB

最近数据库变大了,查询变慢了。我确实知道可能需要使用 explain 重新评估查询。

撇开查询优化不谈,我如何知道利用率状态?例如,从这个 8GB 的​​ shared_buffer 或 24GB 的 effective_cache_size 使用了多少,或任何其他配置值 - 是时候增加这些配置值了吗?

最佳答案

https://www.postgresql.org/docs/current/static/runtime-config-resource.html

shared_buffers = 8GB 已经是巨大的值(value),您可以使用 https://www.postgresql.org/docs/current/static/pgbuffercache.html 对其进行一定程度的检查如果您仍然觉得不够,请记住您可能需要增加 max_wal_size。同样在 9.4 或 9.5 之前(不确定,它肯定发生在 9.3 上)流复制从属仅使用一个核心来扫描 shared_buffers 以查找未使用的已删除页面,因此具有大 shared_buffers 的服务器非常滞后。这两个反对增加的论据来自头顶。

更改 effective_cache_size 是更令人惊讶的想法。通常它从一开始就设置为最大值。因为它基本上告诉计划者他可以指望多少 RAM。因此,如果您安装会占用 RAM 的新软件,您可能希望减少它,如果您向机器添加更多 RAM,则可能会增加它。否则 - 为什么规划器应该期望有更多的 RAM 可用于查询?..

以上是我个人对这两个配置的拙见。回答你的问题我会说尝试 pg_buffercache 检查 shared_buffers 使用情况并检查执行计划 set effective_cache_size to some_bigger_value - 如果你看到 Postgres 启动使用较小值未使用的索引并加快执行速度 - 是时候在集群方面增加它了。

关于postgresql - Postgres 资源使用统计和配置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44288642/

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