pg_stat_activity字段详解

pg_stat_activity表中定义的字段如下图:

pg_stat_activity字段详解_第1张图片

字段名称 字段含义

datid

连接的数据库OID(select oid,datname from pg_database查询出的结果跟该字段可以进行比对验证 )
datname 连接的数据库名称
pid 后台进程ID(连接数据库的操作系统进程ID)  select pg_backend_pid(),可查看当前连接进程的PID
usesysid 连接进程的用户OID(select usename,usesysid from pg_user where usesysid='usesysid')
usename 连接进程的用户(select usename,usesysid from pg_user where usename='usename')
application_name 连接后台进程的应用名称,比如psql等
client_addr 连接数据库客户端的地址,为空说明是服务端本机连接,或是数据库内部进程
client_hostname 连接数据库客户端的主机名,当log_hostname被开启时才有效,并且只有通过IP协议连接时才能记录到主机名;
client_port 连接数据库客户端的端口,为空说明是服务端本机连接
backend_start 进程开始的时间,即客户端连接到服务器的时刻。
xact_start 进程的当前事务开始执行的时间。若当前无活动事务,该值为null。如果当前query是事务中的首次查询,此项值应与query_start列相同.
query_start 当前事务中有在执行中的语句时,此值记录该语句开始执行的时间;
若事务state不是active状态,此值记录的是上一次开始执行语句时间。(即每次开始执行新的语句时此值更新)
state_change 记录进程中事务状态发生改变的时刻;
wait_event_type

记录等待时间的类型

wait_event_type 主要分类四类:

LWLockNamed:表示backend后台进程等待某种特定的轻量级锁;
LWLockTranche:表示backend后台进程等待一组相关轻量级锁;
Lock:表示backend后台进程等待重量级的锁,通常是指 relation、tuple、page、transactionid 等子类型锁;
BufferPin:表示server process 后台进程等待 buffer pin,手册上解释为 Waiting to acquire a pin on a buffer

wait_event 记录等待时间名称
state

表示后台进程的整体状态。可能的值有:
 
active(活动):进程正在执行某个语句

idle(空闲): 进程正在等待客户端的指令.

idle in transaction (事务空闲): 进程在处理事务过程中,但当前未执行任何语句.

idle in transaction (aborted)(事务空闲-退出):当事务中某个语句执行出错的情况外,其余情况与idle in transaction相同.

fastpath function call(快通道函数调用): 后台正在执行某个快通道函数.

disabled(禁用): This state is reported if track_activities is disabled in this backend.

backend_xid 连接进程执行的事务ID
query 后台进程最近(当前)执行的语句内容. 当状态是 active时,它记录的是正在执行的语句内容;否则记录的是上一条语句执行的内容

本文参考:Postgresql的pg_stat_activity字段说明_pg_stat_activity详解_谷满满的博客-CSDN博客

pgsql数据仓库 pg数据库pg_stat_activity_cnolnic的技术博客_51CTO博客

PostgreSQL: Documentation: 15: 28.2. The Cumulative Statistics System

你可能感兴趣的:(数据库)