管理TaurusDB实时会话
操作场景
数据库管理中,当系统性能出现异常时,管理员需要快速定位问题。TaurusDB支持在实时会话页面设置慢会话阈值、查看实例当前会话统计结果,并识别异常会话。您可以手动Kill会话或根据Kill规则智能Kill会话,也可以对会话进行根因分析,识别阻塞会话信息,从而提高系统性能和管理效率。
前提条件
开启根因分析需要修改“performance_schema”参数值为“ON”,详细内容请参见修改TaurusDB实例参数。开启后可在会话列表中使用根因分析能力。
约束限制
开启根因分析功能后,需要重启实例,而重启将导致当前所有会话被终止。因此,该功能仅能分析开启后新出现的阻塞会话,无法分析开启前已存在的阻塞会话。
手动Kill会话、智能Kill会话、自动kill会话的区别
设置慢会话阈值
- 登录TaurusDB管理控制台。
- 单击管理控制台左上角的
,选择区域和项目。 - 在“实例管理”页面,选择目标TaurusDB实例,单击实例名称,进入“实例概览”页面。
- 在左侧导航栏选择“智能DBA助手”下的“实时会话”。
- 在会话统计信息区域,可以查看会话概要(如慢会话、活跃会话、会话总数和长事务会话)分别按照用户、访问主机和数据库维度统计的会话结果。 图1 实时会话
- 在页面上方的“慢会话阈值”处,单击
,在弹框中按需设置慢会话阈值,单击“确定”。页面自动刷新筛选出执行时间大于该阈值的慢会话列表。 图2 设置慢会话阈值
- 在“会话列表”模块,可以查看会话详情。
管理会话列表
- 登录TaurusDB管理控制台。
- 单击管理控制台左上角的
,选择区域和项目。 - 在“实例管理”页面,选择目标TaurusDB实例,单击实例名称,进入“实例概览”页面。
- 在左侧导航栏选择“智能DBA助手”下的“实时会话”。
- 在“会话列表”模块,可进行如下操作。
智能Kill会话
- 登录TaurusDB管理控制台。
- 单击管理控制台左上角的
,选择区域和项目。 - 在“实例管理”页面,选择目标TaurusDB实例,单击实例名称,进入“实例概览”页面。
- 在左侧导航栏选择“智能DBA助手”下的“实时会话”。
- 在“会话列表”模块,单击“智能Kill会话”,弹框中单击“Kill会话实时统计结果预览”,查看当前时刻下符合被Kill的会话ID、SQL关键字等信息,预览非最终Kill结果,仅为当前时刻统计数据。
智能Kill会话规则
系统按照执行时长降序取前1000个会话,仅选取其中的SELECT类型会话,每个会话自动提取SQL语句中的关键字,关键字相同的会话分为一组,判断每组会话是否满足top3_time、top3_count、top3_avg_time策略,取Top 3的组自动Kill会话。- top3_time:以每组内会话最长的执行时长排序,取Top 3的组kill。
- top3_count:以每组内会话数量排序,取Top 3的组kill。
- top3_avg_time:以每组内会话平均执行时长排序,取Top 3的组kill。
智能Kill时会Kill组内所有会话,即使会话同时满足top3_time、top3_count、top3_avg_time中的多个条件,也只会执行一次Kill操作。
- 确认无误,单击“确定”,系统会自动kill符合智能规则的会话。
- 如需查看Kill会话历史,您可以在“会话列表”模块,单击“智能Kill会话历史”,查看符合智能Kill会话规则且已被结束的会话。 最多可查询30天内的智能kill会话历史,超出30天的数据将被自动清理。图6 智能Kill会话历史
单击操作列的“下载”,压缩包里包含3个文件,分别是killed_sessions_xxxx,rules_xxxx和sessions_xxxx。
- killed_sessions_xxxx:已被Kill的会话信息。
- rules_xxxx:智能kill会话的规则。
- sessions_xxxx:按照执行时长降序取前1000个SELECT类型的会话信息。
导出会话信息
- 登录TaurusDB管理控制台。
- 单击管理控制台左上角的
,选择区域和项目。 - 在“实例管理”页面,选择目标TaurusDB实例,单击实例名称,进入“实例概览”页面。
- 在左侧导航栏选择“智能DBA助手”下的“实时会话”。
- 在“会话列表”模块,可以导出部分会话或全部会话。 图7 导出会话信息


