管理实时会话
操作场景
实时会话功能提供当前数据库会话快照查询,并支持排序过滤展示。可基于用户、访问主机、数据库多维度快速过滤识别到自定义慢SQL会话、活跃会话等。Kill会话能应对紧急实例恢复,保障数据库的可用性。
注意事项
Kill会话操作可能会导致业务断连,建议业务有重连机制,请谨慎操作。
操作步骤
- 单击管理控制台左上角的
,选择区域。 - 单击页面左上角的
,选择“数据库 > 云数据库 RDS”,进入RDS信息页面。 - 在“实例管理”页面,选择目标实例,单击实例名称,进入实例的“概览”页签。
- 在左侧导航栏选择“智能DBA助手”下的“实时会话”。
- 在“实时会话”页面,可以进行如下操作。
- 查看会话统计结果
在会话统计信息区域,可以查看会话概要(如慢会话数、活跃会话数、会话总数和长事务会话)分别按照用户、访问主机和数据库维度统计的会话结果。
图1 实时会话
- 设置慢会话阈值
- Kill异常会话
在会话列表,可以查看会话详情,也可以根据实际运行状态和业务需求,选择异常会话,单击“Kill会话”,结束会话,使数据库恢复正常。
批量Kill会话时,一次性最多选择100条会话。
图3 Kill会话
- 一键Kill会话
在会话列表,根据实际运行状态,单击“一键Kill会话”,实例将按照以下规则来结束会话,使数据库恢复正常,该操作有误删除会话的风险,请谨慎操作。
按执行时长倒序取前1000个会话,仅选取其中的SELECT类型会话,对每个会话提取关键字,将关键字相同的会话分为一组,按以下策略执行:
- top3_time:以每组内会话最长的执行时长排序,取Top3的组Kill。
- top3_count:以每组内会话数量排序,取Top3的组Kill。
- top3_avg_time:以每组内会话平均执行时长排序,取Top3的组Kill。
- Kill会话时会Kill组内所有会话,即使会话命中多个条件也仅Kill一次。
对于符合上述规则的会话关键字,可同步添加限流规则,生成的限流规则具有时效性,持续一定时间后会自动删除,具体添加限流的规则如下:对平均执行时长Top3的组(限制并发数为会话数量 * 0.3)、会话数量Top3的组(限流数量为会话数量 * 0.5)进行限流,如果该组关键字已限流则向后顺延,每次最多限流6个组。
支持查看当前时刻符合规则的待Kill会话,以及能够设置的SQL限流规则。
图4 一键Kill会话
- 设置SQL限流
在会话列表,单击“SQL限流”,通过设置语句类型、关键字等匹配SQL语句,当所匹配的SQL语句超过设置的最大并发数时,数据库实例会拒绝执行此SQL。从而解决SQL并发数过高导致的实例不稳定问题。
更多内容,请参见新建SQL限流规则。
- 创建锁分析
创建锁分析前,需要先在“锁&事务”页面登录数据库实例,详见管理锁&事务。
在会话列表,单击“创建锁分析”,会生成一条锁分析数据,用于查看是否存在持有锁的会话。
- 导出会话列表
- 查看会话统计结果
查看Kill会话历史
在实时会话页面,单击“一键Kill会话历史”,查看一键Kill会话的操作历史,并支持下载实例级别近3天的历史记录。

