跳到主要内容
版本:26.x

查询审计

查询审计 用于检索历史查询,定位慢查询和失败请求,并结合 SQL、执行耗时、扫描量及内存等指标分析性能问题。查看当前正在执行的查询,请使用会话管理。

准备工作​

登录 SelectDB Cloud 控制台,选择目标仓库,单击左侧导航栏的 查询审计。

查询审计需要启用审计日志,并使用具有查看权限的数据库用户。未开启时,按照页面指引启用;无权限时,请联系数据库管理员授权,或使用 切换用户 更换数据库身份。仓库需要有可用的计算集群来读取审计日志。

筛选历史查询​

  1. 选择时间范围,缩小需要排查的查询区间。
  2. 选择 全部日志 或 慢查询,并按需选择 全部状态、成功 或 失败。
  3. 在结果中核对 SQL、数据库、用户及主机信息,定位需要分析的记录。
  4. 使用表格的自定义列功能选择所需指标,并按执行耗时、CPU、内存、扫描量等支持排序的字段调整顺序。
  5. 单击刷新按钮更新结果;需要持续观察时,可以设置 5 秒或 10 秒的刷新间隔。

时间筛选和记录时间应结合页面标明的时区理解。新写入的审计记录可能存在延迟,不能将查询审计列表当作实时会话列表。

查看查询详情和 Profile​

  1. 单击目标记录的 Query ID。
  2. 在 查询详情 中核对 SQL、执行状态、耗时、用户、数据库及错误信息。
  3. 如果已生成 Profile,切换到 查询 Profile,查看执行计划和算子资源消耗,辅助定位耗时节点。

常用分析指标包括 CPU 占比耗时、内存使用峰值、扫描行数、返回行数和计算集群。高扫描量、低返回量或高内存占用可以作为排查线索,需要结合 SQL 和表结构进一步判断。

Profile 需要在查询执行时采集,不是每条审计记录都具备 Profile。未采集或记录已过期时,不能仅凭审计日志恢复完整 Profile。相关操作参见 SQL 编辑器。

下载审计结果​

使用页面的下载操作导出当前筛选范围内的审计记录。下载前核对时间范围、日志类型和状态条件,避免遗漏需要分析的记录。

查询审计配置​

具有相应权限的数据库管理员可以打开 查询审计配置,查看和调整:

配置项说明
查询审计控制是否继续写入审计日志。开启后,查询记录写入审计日志表并占用存储空间。
当前审计日志大小查看审计日志的存储占用。
慢查询日志阈值设置判断慢查询的耗时阈值,单位为秒。
日志保留天数设置审计日志保留时间;修改异步生效。

核对配置后,单击 确认。部分配置仅在以数据库管理员身份登录且当前环境支持时可修改。

注意

  • 关闭查询审计会停止新日志写入,已写入的日志不会因此自动清除。
  • 清除 会删除已有审计日志。执行前应确认审计、排障和留存需求,并按页面提示完成确认。
  • 调整保留时间可能影响可查询的历史范围。审计表占用仓库存储,应结合留存需求规划容量。