---
title: OceanBase 数据库性能视图 gv$sql_audit 介绍 -OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于OceanBase 数据库性能视图 gv$sql_audit 介绍 相关的常见问题和使用技巧，帮助您快速解决OceanBase 数据库性能视图 gv$sql_audit 介绍 的难题。
---
切换语言

- 简体中文
- English

划线反馈

# OceanBase 数据库性能视图 gv$sql_audit 介绍

更新时间：2024-01-22 01:56

适用版本： V2.1.x、V2.2.x、V3.1.x、V3.2.x 内容类型：TechNote  

`gv$sql_audit` 是分析 SQL 执行情况的重要视图，通过该视图中不仅可以分析出慢 SQL（如 elapsed_time、execute_time 等指标），还能挖掘出其他重要内容。

#### 说明

本文以 OceanBase 数据库 V2.2.7x 为例进行说明。该视图在不同版本中可能存在差异，请参见对应版本的《OceanBase 数据库 参考指南》中的 **性能视图** 章节。

## 适用版本

OceanBase 数据库所有版本。

## 基本信息字段

`gv$sql_audit` 中基本信息字段如下。

- TRACE_ID：可以根据该信息定位到该 SQL 的 debug 信息。
 - TENANT_ID：租户 ID。
 - TRANSACTION_HASH：可以根据该信息找到事务中的 SQL 信息。
 - PLAN_ID：可以根据 `PLAN_ID` 与 `IP`、`PORT` 与 `TENANT_ID` 共同获取当前执行计划的信息查找执行计划。

```shell
obclient> SELECT * FROM gv$plan_cache_plan_explain WHERE ip = 'xxxx' AND port = xxxx AND tenant_id=xxx AND plan_id =xxx;

```

## 耗时相关信息字段

`gv$sql_audit` 中与耗时相关信息字段如下。

- ELAPSED_TIME：获取 SQL 请求到响应的时间，单位为微秒。
 - QUEUE_TIME：表示在队列中等待的时间。如果此值过高，表示租户 CPU 不足或者服务器负载过高。
 - EXECUTE_TIME：表示 CPU 执行时间。
 - TOTAL_WAIT_TIME_MICRO：sync rpc 表示事件的等待以及等待耗时，贯穿于整个 SQL 执行周期里。

在日志中，默认会打印执行时长超过 100 ms 的 SQL，但实际上有可能打印出小于 100 ms SQL，这是由于打印结果没有计入 `queue_time`。

## SQL 相关特征字段

`gv$sql_audit` 中与 SQL 相关信息字段如下。

- IS_EXECUTOR_RPC：表示非 rpc 调用，rpc 调用的耗时会计算到真正 SQL 执行的耗时中去。
 - IS_INNER_SQL：0 表示非内部统计 SQL，1 表示内部统计 SQL。
 - RET_CODE：表示语句错误码。其中，0 表示没有错误，成功执行。

  #### 说明

  您可以根据显示的错误码，在 OceanBase 数据库的《参考指南》中的 **错误码** 章节中查找有关该错误码的详细信息。
 - PLAN_TYPE：表示计划为本地计划还是远程计划。有如下取值：

     - 1 表示本地执行。
     - 2 表示远程调用（调用的分区在一台远程节点上）。
     - 3 表示分布式调用 。
 - RPC_COUNT：表示 rpc 调用次数。
 - IS_HIT_PLAN：表示是否命中计划缓存。其中，

     - 1 表示命中计划缓存，对于命中缓存的 SQL，其 GET_PLAN_TIME 应为 0。
     - 0 表示未命中计划缓存。
 - CLIENT_IP：一般为 OBProxy 的 IP 地址，特别地，对于 rpc 请求可能是其他 OBServer 的 IP 地址。
 - CLIENT_PORT：表示请求发出的源。2882 表示数据库内部调用 rpc，而非 OBProxy 发送的请求。
 - REQUEST_TYPE：表示请求对应的类型。有如下取值：

     - 0 表示非法请求。
     - 1 表示内部请求。
     - 2 表示本地请求。
     - 3 表示远程请求。
     - 4 表示分布式请求。
     - 5 表示 SQL prepare 请求。
     - 6 表示 SQL execute stmt 请求。

Previous

[OceanBase 数据库中 EXISTS 的条件为单个常量导致执行慢的原因与解决方法](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000659378)

Next

[使用 use_concat hint 优化 or 语句的性能](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000663396) ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
