计划缓存视图 
===========================

计划缓存视图包含记录执行计划的缓存状态、执行统计的相关信息以及计划信息。

(g)v$plan_cache_stat 
-----------------------------

(g)v$plan_cache_stat 视图用于记录每个计划缓存的状态，每个计划缓存在该视图中有一条记录。


|   **字段名称**   |   **类型**    |              **描述**               |
|--------------|-------------|-----------------------------------|
| tenant_id    | bigint(20)  | 租户 ID                             |
| svr_ip       | varchar(32) | IP 地址                             |
| svr_port     | bigint(20)  | 端口号                               |
| sql_num      | bigint(20)  | plan_cache 涉及 SQL 条数              |
| mem_used     | bigint(20)  | plan_cache 已经使用的内存                |
| access_count | bigint(20)  | 进 plan_cache 的次数                  |
| hit_count    | bigint(20)  | 命中 plan_cache 的次数                 |
| hit_rate     | bigint(20)  | 命中 plan_cache 的次数                 |
| plan_num     | bigint(20)  | plan 的个数                          |
| mem_limit    | bigint(20)  | plan_cache 的内存上限                  |
| hash_bucket  | bigint(20)  | plan_cache hash map 中的 bucket 的个数 |
| stmtkey_num  | bigint(20)  | plan_cache 中 stmt_key 的个数         |



(g)v$plan_cache_plan_stat 
----------------------------------

(g)v$plan_cache_plan_stat 用于记录计划缓存中所有 plan 的具体信息及每个计划总的执行统计信息，每个 plan 在该视图中有一条记录。


|       **字段名称**        |       **类型**        |                                                                                                      **描述**                                                                                                      |
|-----------------------|---------------------|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| tenant_id             | bigint(20)          | 租户 ID                                                                                                                                                                                                            |
| svr_ip                | varchar(32)         | 机器的 IP 地址                                                                                                                                                                                                        |
| svr_port              | bigint(20)          | 机器端口号                                                                                                                                                                                                            |
| plan_id               | bigint(20)          | 执行计划的 ID                                                                                                                                                                                                         |
| sql_id                | varchar(32)         | 这条 SQL 的 ID                                                                                                                                                                                                      |
| type                  | bigint(20)          | 执行计划的类型：  * 1 表示 local plan   * 2 表示 remote plan   * 3 表示 distribute plan    |
| db_id                 | bigint(20) unsigned | database 的 ID                                                                                                                                                                                                    |
| is_bind_sensitive     | bigint(20)          | 该计划是否需要打开 ACS                                                                                                                                                                                                    |
| is_bind_aware         | bigint(20)          | 该计划已经打开了 ACS                                                                                                                                                                                                     |
| statement             | varchar(4096)       | 参数化后的 SQL 语句                                                                                                                                                                                                     |
| query_sql             | varchar(65536)      | 第一次加载计划时查询的原始 SQL 语句                                                                                                                                                                                             |
| sys_vars              | varchar(4096)       | 影响计划的系统变量的值                                                                                                                                                                                                      |
| plan_hash             | bigint(20)          | 执行计划的 hash 值                                                                                                                                                                                                     |
| first_load_time       | timestamp(6)        | 第一次被加载时间                                                                                                                                                                                                         |
| schema_version        | bigint(20)          | schema 版本号                                                                                                                                                                                                       |
| merged_version        | bigint(20)          | 当前缓存的 plan 对应的合并版本号                                                                                                                                                                                              |
| last_active_time      | timestamp(6)        | 上一次被执行时间                                                                                                                                                                                                         |
| avg_exe_usec          | bigint(20)          | 平均执行时间                                                                                                                                                                                                           |
| slowest_exe_time      | timestamp(6)        | 最慢一次执行耗时                                                                                                                                                                                                         |
| slowest_exe_usec      | bigint(20)          | 最慢执行时间戳                                                                                                                                                                                                          |
| slow_count            | bigint(20)          | 当前 plan 成为慢查询次数                                                                                                                                                                                                  |
| hit_count             | bigint(20)          | 被命中次数                                                                                                                                                                                                            |
| plan_size             | bigint(20)          | 执行计划的大小                                                                                                                                                                                                          |
| executions            | bigint(20)          | 执行次数                                                                                                                                                                                                             |
| disk_reads            | bigint(20)          | 所有执行物理读次数                                                                                                                                                                                                        |
| direct_writes         | bigint(20)          | 所有执行写盘的次数                                                                                                                                                                                                        |
| buffer_gets           | bigint(20)          | 所有执行逻辑读次数                                                                                                                                                                                                        |
| application_wait_time | bigint(20) unsigned | 所有执行所有 application 类事件的总时间                                                                                                                                                                                       |
| concurrency_wait_time | bigint(20) unsigned | 所有执行所有 concurrency 类事件的总时间                                                                                                                                                                                       |
| user_io_wait_time     | bigint(20) unsigned | 所有执行所有 user_io 类事件的总时间                                                                                                                                                                                           |
| rows_processed        | bigint(20)          | 所有执行选择的结果行数或执行更改表中的行数                                                                                                                                                                                            |
| elapsed_time          | bigint(20) unsigned | 所有执行接收到请求到执行结束消耗时间                                                                                                                                                                                               |
| cpu_time              | bigint(20) unsigned | 所有执行消耗的 CPU 时间                                                                                                                                                                                                   |
| large_querys          | bigint(20)          | 被判断为大查询的次数                                                                                                                                                                                                       |
| delayed_large_querys  | bigint(20)          | 被判断为大查询且被丢入大查询队列的次数                                                                                                                                                                                              |
| outline_version       | bigint(20)          | outline 版本号                                                                                                                                                                                                      |
| outline_id            | bigint(20)          | outline 的 ID。 如果为 -1 表示不是通过绑定 outline 生成的计划                                                                                                                                                      |
| outline_data          | varchar(65536)      | 计划对应的 outline 信息                                                                                                                                                                                                 |
| acs_sel_info          | varchar(65536)      | 当前 ACS 计划对应的选择率空间                                                                                                                                                                                                |
| table_scan            | tinyint(4)          | 表示该查询是否为主键扫描                                                                                                                                                                                                     |
| evolution             | bool                | 表示该执行计划是否在演进中                                                                                                                                                                                                    |
| evo_executions        | bigint(20)          | 演进次数                                                                                                                                                                                                             |
| evo_cpu_time          | bigint(20) unsigned | 演进过程中总的执行 CPU 时间                                                                                                                                                                                                 |
| timeout_count         | bigint(20)          | 超时次数                                                                                                                                                                                                             |
| ps_stmt_id            | bigint(20)          | prepare statement 的 ID                                                                                                                                                                                           |



(g)v$plan_cache_plan_explain 
-------------------------------------

(g)v$plan_cache_plan_explain 用于查询某条 SQL 在计划缓存中的执行计划。
**注意**



* 如果查询 `gv$plan_cache_plan_explain` 表, 则需要指定 IP、port、tenant_id、plan_id 等条件。

  

* 如果查询 `v$plan_cache_plan_explain` 表, 则需要指定 tenant_id、plan_id 等条件。

  





| **字段名称**  |    **类型**    |     **描述**      |
|-----------|--------------|-----------------|
| TENANT_ID | bigint(20)   | 租户 ID           |
| IP        | varchar(32)  | IP 地址           |
| PORT      | bigint(20)   | 端口号             |
| PLAN_ID   | bigint(20)   | 执行计划的 ID        |
| OPERATOR  | varchar(128) | operator 的名称    |
| NAME      | varchar(128) | 表的名称            |
| ROWS      | bigint(20)   | 预估的结果行数         |
| COST      | bigint(20)   | 预估的代价           |
| PROPERTY  | varchar(256) | 对应 operator 的信息 |


