OceanBase 运维中,哪些操作可以用来排查性能慢 SQL()
A. 查看 v$sql 视图
B. 查看 SQL 执行计划 explain
C. 查看慢查询日志
D. 直接删除 sys 租户下所有 resource unit
可以用来排查性能慢 SQL 的操作是:A、B、C 。
D 选项“直接删除 sys 租户下所有 resource unit”是错误的,且极其危险。 这不仅不能排查慢 SQL,反而会破坏集群资源管理,导致租户不可用甚至数据丢失,属于严重的误操作。
各选项解析
**A. 查看 vsql视图:正确∗∗‘vsql视图:正确∗∗‘vsql(及其全局视图 gv$sql)记录了 SQL 执行计划的统计信息,包括平均执行时间( AVG_EXE_USEC)、最慢执行耗时( SLOWEST_EXE_USEC)、慢查询次数( SLOW_COUNT`)等字段。通过查询该视图,可以按耗时排序快速定位到执行缓慢的 SQL 语句。
B. 查看 SQL 执行计划 explain:正确
使用 EXPLAIN 命令可以查看优化器为某条 SQL 生成的执行计划,判断是否存在全表扫描、索引缺失、连接顺序不佳等问题。这是慢 SQL 性能分析的必备步骤,也是确定调优方向的关键依据。
C. 查看慢查询日志:正确
OceanBase 提供了慢查询诊断能力。默认情况下,执行时间超过阈值的 SQL 会被记录,可通过 OCP(OceanBase 云平台)的 SlowSQL 诊断页面查看,或查询相关的审计视图来识别风险语句。
D. 直接删除 sys 租户下所有 resource unit:错误
resource unit 是 OceanBase 中资源分配的基本单位,承载着租户运行所需的 CPU、内存等资源。直接删除 sys 租户下的资源单元会破坏系统租户自身的资源基础,可能导致集群管理功能异常,与“排查慢 SQL”没有任何关系,属于严重的违规操作。