在进行技术测试时,观察数据库性能,并找到性能方面存在问题,对数据库做监控是必不可少的。
1.数据库性能视图
这里我们常用的是pg_stat_activity,该视图可以查询出当前正在运行的SQL。
postgresql中pg_stat_activity动态统计
pg_stat_activity:一行服务器进程,显示当前连接进程的状态信息,比如状态和当前查询
。
pg_stat_activity视图具体信息:
postgres=# \d+ pg_stat_activity
View "pg_catalog.pg_stat_activity"
Column | Type | Storage | Description
------------------+--------------------------+----------+-------------
datid | oid | plain | 后端连接到的数据库的OID
datname | name | plain | 后端连接到的数据库的名称
pid | integer | plain | 后端的进程 ID
usesysid | oid | plain | 登录到这个后端的用户的 OID
usename | name | plain | 登录到这个后端的用户的名称
application_name | text | extended | 连接到这个后端的应用的名称
client_addr | inet | main | 连接到这个后端的客户端的IP 地址。 如果这个域为空,它表示客户端通过服务器机器上的一个 Unix 套接字连接或者这是一个内部进程(如自动清理)
client_hostname | text