更新时间:2026-02-04 GMT+08:00
分享

管理历史会话

操作场景

历史会话功能可以查询当前数据库的历史会话、历史等待事件、历史Top SQL。

操作步骤

  1. 登录管理控制台
  2. 单击管理控制台左上角的,选择区域。
  3. 单击页面左上角的,选择“数据库 > 云数据库 RDS”,进入RDS信息页面。
  4. 在“实例管理”页面,选择目标实例,单击实例名称,进入实例的“概览”页签。
  5. 在左侧导航栏选择“智能DBA助手”下的“会话管理”。
  6. 在历史会话分析页面,选择近7天内的任意时间段,可以进行如下操作。

    • 查看历史会话

      在会话统计信息区域,可以按照数据库名、会话ID、用户名筛选会话结果。

      在会话列表上方,单击“导出”,仅支持导出当前页的会话;并支持查看全量导出记录。

      图1 历史会话
      表1 历史会话信息说明(列表中部分类别默认不展示)

      类别

      描述

      采样时间

      当前记录采集时间。

      阻塞进程ID

      阻止当前会话的会话ID数组。

      数据库OID

      当前会话连接的数据库的OID。

      数据库名

      当前会话连接的数据库的名称。

      会话ID

      当前会话ID。

      并行会话ID

      • 如果当前会话是并行查询,返回并行查询主查询的会话ID。
      • 如果当前会话是并行查询的主查询或不是并行查询,则返回为空。

      后端用户OID

      连接到当前会话的用户的OID。

      用户名

      连接到当前会话的用户的名称。

      应用名

      连接到当前会话的应用的名称。

      客户端地址

      连接到当前会话的客户端的IP地址。

      客户端名称

      连接到当前会话的客户端的主机名。

      客户端端口

      连接到当前会话的客户端的端口号。

      会话建立时间

      当前会话建立的时间。

      事务启动时间

      当前事务的启动的时间。

      事务执行时间(s)

      从事务开始到采集时刻,事务运行的时间。单位:秒。

      查询开始时间

      当前SQL查询开始的时间。如果会话状态不是active,则为上一个SQL查询开始的时间。

      state改变时间

      会话状态上一次被改变的时间。

      等待事件类型

      当前查询等待的事件类型。不存在等待事件时为空。

      等待事件名称

      当前查询等待的事件名称。不存在等待事件时为空。

      会话状态

      当前会话的总体状态。主要的会话状态如下:

      • active:正在执行一个查询。
      • idle:正在等待一个新的客户端命令。
      • idle in transaction:在一个事务中,但是当前没有正在执行一个查询。

      Backend XID

      顶层事务标识符。

      Backend Xmin

      当前会话的xmin。

      Query ID

      • 若会话状态为active,表示正在执行的SQL查询的标识符。
      • 会话状态为其他状态时,表示上一次SQL查询的标识符。

      SQL语句

      • 若会话状态为active,表示正在执行的SQL查询。
      • 会话状态为其他状态时,表示上一次执行SQL查询。

      进程类型

      当前会话的类型。

      可能类型有:autovacuum launcher, logical replication launcher, parallel worker, background writer, client backend, checkpointer, startup, walreceiver, walsender, walwriter 等。

      内存占比(%)

      当前会话的内存占用率。该指标每5min采集一次。

      进程状态

      当前会话所在OS进程的状态。该指标每5min采集一次。

      主要的状态有:sleeping, running, disk-sleep。

      3秒内平均CPU占用率(%)

      当前会话最近3秒内平均CPU占用率。该指标每5min采集一次。

      I/O等待时间(s)

      当前会话所在OS进程硬盘IO等待时间占比。该指标每5min采集一次。

      磁盘读速率(MB/s)

      当前会话所在OS进程硬盘读吞吐量。该指标每5min采集一次。

      磁盘写速率(MB/s)

      当前会话所在OS进程硬盘写吞吐量。该指标每5min采集一次。

    • 查看历史等待事件
      表2 历史等待事件信息说明

      类别

      描述

      采样时间

      当前记录采集时间。

      个数

      当前时刻同一种等待事件,会话状态同时存在的会话个数。

      等待事件类型

      等待事件类型。

      等待事件名称

      等待事件名称。

      会话状态

      主要的会话状态如下:

      • active:正在执行一个查询。
      • idle:正在等待一个新的客户端命令。
      • idle in transaction:在一个事务中,但是当前没有正在执行一个查询。
    • 查看历史Top SQL(瞬时)
      表3 看历史Top SQL信息说明

      类别

      描述

      采样时间

      当前记录采集时间。

      个数

      当前时刻下,相同数据库、用户、SQL语句同时执行的会话个数。

      对于RDS for PostgreSQL 14及以上版本表示相同数据库、用户、Query ID同时执行的会话个数。

      数据库名

      数据库名。

      用户名

      用户名。

      SQL语句

      SQL语句。

      Query ID

      SQL查询标识符。仅支持RDS for PostgreSQL 14及以上版本。

相关文档