首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PostgreSQL的内存使用

PostgreSQL的内存使用
EN

Database Administration用户
提问于 2014-10-28 08:54:17
回答 2查看 1.6K关注 0票数 2

我使用的是postgreSQL 9.3数据库,并在设置中增加了shared_bufferseffective_cache_size

postgreSQL总是占用这么大的内存,还是只在需要的时候使用?

我正在亚马逊EC2实例上运行我的数据库,我将使用一个CloudWatch自定义度量来监视内存,现在我正在考虑它,如果我在配置中设置的内存总是被保留的话,即似乎在cloudWatch度量中使用。

如果是这样的话,我如何监控postgreSQL的实际使用内存?

EN

回答 2

Database Administration用户

发布于 2014-10-28 09:20:11

shared_buffers在启动时是静态的,从不调整大小。effective_cache_size只是对优化器的一个提示。它从来没有分配过。它只是暗示了正在发生的事情。所以shared_buffers就是你所看到的。

票数 3
EN

Database Administration用户

发布于 2014-10-28 09:30:01

shared_buffers是静态分配的共享缓存,所有PostgreSQL后端共享。

除此之外,每个后端都有用于查询计划、查询文本、准备语句、游标等的私有内存。它还有一些查询工作内存,由work_mem控制,用于内存中的排序/联接/等,还有用于索引构建之类的maintenance_work_mem

PostgreSQL作为一个整体总是使用比shared_buffers更多的东西。它还有其他用于许多事情的小型共享内存段,以及每个后端工作内存。

票数 1
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/81254

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档