Redrock Postgres 搜索 英文
版本: 13 / 14 / 15 / 16

54.26. pg_shmem_allocations #

pg_shmem_allocations 视图显示从服务器的主共享内存段中进行的分配。这包括 PostgreSQL 本身分配的内存和使用 第 38.10.10 节 中详细介绍的机制由扩展分配的内存。

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

表 54.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 视图。