支持的版本: 当前 (17) / 16 / 15 / 14 / 13
开发版本: devel

52.26. pg_shmem_allocations #

pg_shmem_allocations 视图显示从服务器主共享内存段进行的分配。这包括 PostgreSQL 本身分配的内存,以及扩展使用第 36.10.10 节中详述的机制分配的内存。

请注意,此视图不包括使用动态共享内存基础设施分配的内存。

表 52.26. pg_shmem_allocations

列名 类型

描述

name text

共享内存分配的名称。对于未使用的内存为 NULL,对于匿名分配为 <anonymous>

off int8

分配开始的偏移量。对于匿名分配为 NULL,因为与它们相关的详细信息未知。

size int8

分配的大小,以字节为单位

allocated_size int8

分配的大小,以字节为单位,包括填充。对于匿名分配,没有关于填充的信息,因此 sizeallocated_size 列将始终相等。填充对于空闲内存没有意义,因此在这种情况下,列也将相等。


匿名分配是使用 ShmemAlloc() 直接进行的分配,而不是通过 ShmemInitStruct()ShmemInitHash() 进行的分配。

默认情况下,只有超级用户或具有 pg_read_all_stats 角色权限的角色才能读取 pg_shmem_allocations 视图。

提交更正

如果您发现文档中任何不正确的内容,与您使用特定功能的体验不符,或需要进一步澄清,请使用此表单报告文档问题。