实例会话

当数据库出现性能问题或异常操作时,通常需要结合数据库的会话信息,快速定位和解决数据库的问题。通过实例会话功能,您可以实时查看目标实例会话的客户端信息,所执行的命令和已连接的时长等信息,并可以根据业务需求终止异常会话。

前提条件

目标数据库实例已接入DAS,并且接入状态显示为接入正常

功能限制

对于Redis集群版实例,无法获取使用直连模式产生的会话。

操作步骤

  1. 登录DAS控制台

  2. 在左侧导航栏中,单击智能运维中心 > 实例监控

  3. 找到目标实例,单击实例ID,进入目标实例详情页。

  4. 在左侧导航栏,单击实例会话

  5. 实例会话页面,您可以在实例会话会话统计区域对实例当前会话进行如下操作:

    • kill会话。

    • 查看会话统计信息:可以查看会话概要(如总client数和活跃client数),查看按照来源统计的会话总数及活跃数。

    • 导出会话统计信息:可以按概要和按照来源统计等条件导出会话统计信息。

列表参数

说明

您也可以在实例会话区域中,将鼠标放置在表格对应列的参数名称名上,查看参数的含义。

参数

说明

参数

说明

id

客户端ID。

sub

已订阅频道的数量。

addr

客户端的地址和端口。

psub

已订阅模式的数量。

name

客户端名称。

multi

在事务中被执行的命令数量。

cmd

最近一次执行的命令。

qbuf

输入缓冲区大小。

age

已连接时长(秒)。

qbuf-free

输入缓冲区剩余大小。

idle

空闲时长(秒)。

obl

输出固定缓冲区大小。

db

该客户端正在使用的数据库。

oll

输出动态缓冲区的对象列表长度。

flags

客户端flag可以由以下部分组成:

  • O: 客户端是 MONITOR 模式下的附属节点(slave)。

  • S: 客户端是一般模式下(normal)的附属节点。

  • M: 客户端是主节点(master)。

  • x: 客户端正在执行事务。

  • b: 客户端正在等待阻塞事件。

  • i: 客户端正在等待 VM I/O 操作(已废弃)。

  • d: 一个受监视(watched)的键已被修改,EXEC 命令将失败。

  • c: 在将回复完整地写出之后,关闭链接。

  • u: 客户端未被阻塞(unblocked)。

  • U: 通过Unix套接字连接的客户端。

  • r: 客户端是只读模式的集群节点。

  • A: 尽可能快地关闭连接。

  • N: 未设置任何flag。

omem

输出缓冲区大小。

fd

套接字所使用的文件描述符。

events

文件描述符事件:

  • r: 客户端套接字(在事件 loop 中)是可读的。

  • w: 客户端套接字(在事件 loop 中)是可写的。

相关API

API

描述

GetRedisAllSession

获取Redis实例当前会话数据。

KillInstanceAllSession

结束指定Redis实例上的全部会话。