首批通过分布式安全可靠测评,为关键业务系统打造
DISPLAY_ACTIVE_SESSION_PLAN
更新时间:2026-05-05 14:27:49
DISPLAY_ACTIVE_SESSION_PLAN 函数用于展示指定 Session 的实时计划详情。
功能适用性
该内容仅适用于 OceanBase 数据库企业版。OceanBase 数据库社区版暂不支持。
函数定义
DBMS_XPLAN.DISPLAY_ACTIVE_SESSION_PLAN(
session_id INTEGER DEFAULT 0,
format VARCHAR2 DEFAULT 'TYPICAL',
svr_ip VARCHAR2 DEFAULT NULL, -- default value: server connected by client
svr_port INTEGER DEFAULT 0 -- default value: server connected by client
)
return DISPLAY_ACTIVE_SESSION_PLAN;
参数说明
| 参数 | 说明 |
|---|---|
| session_id | 用户连接的session id,注意不是proxy session id,是server的session id。 |
| format | 指定计划格式信息,可选参数如下:
|
| svr_ip | 计划所在的节点 IP,默认是 Session 连接的节点 IP。 |
| svr_port | 计划所在的节点端口号,默认是 Session 连接的节点端口号。 |
示例
/* 执行慢 SQL */
obclient> SELECT COUNT(*) FROM TABLE(GENERATOR(100000)) A, TABLE(GENERATOR(10000))B;
+------------+
| COUNT(*) |
+------------+
| 1000000000 |
+------------+
1 row in set
/* 连接另外一个会话,使用 SHOW PROCESSLIST 命令查询正在执行 SQL 的 Session ID */
obclient> SHOW PROCESSLIST;
+------------+------+--------------------+------+---------+------+--------+---------------------------------------------------------------------------+
| ID | USER | HOST | DB | COMMAND | TIME | STATE | INFO |
+------------+------+--------------------+------+---------+------+--------+---------------------------------------------------------------------------+
| 3221675847 | SYS | 11.x.x.44:57841 | SYS | Query | 0 | ACTIVE | show processlist |
| 3221668463 | SYS | 11.x.x.44:57530 | SYS | Query | 2 | ACTIVE | select count(*) from table(generator(100000)) A, table(generator(10000))B |
+------------+------+--------------------+------+---------+------+--------+---------------------------------------------------------------------------+
/* 展示 Session 计划详情 */
obclient> SELECT * FROM TABLE (DBMS_XPLAN.DISPLAY_ACTIVE_SESSION_PLAN(3221668463));
+--------------------------------------------------------------------------------------------------------------------+
| COLUMN_VALUE |
+--------------------------------------------------------------------------------------------------------------------+
| ============================================================================================================== |
| |ID|OPERATOR |NAME|EST.ROWS|EST.TIME(us)|REAL.ROWS|REAL.TIME(us)|IO TIME(us)|CPU TIME(us)| |
| -------------------------------------------------------------------------------------------------------------- |
| |0 |SCALAR GROUP BY | |1 |1794 |0 |0 |0 |0 | |
| |1 |└─NESTED-LOOP JOIN CARTESIAN | |39601 |1076 |0 |0 |0 |0 | |
| |2 | ├─FUNCTION_TABLE |A |199 |1 |0 |0 |0 |0 | |
| |3 | └─MATERIAL | |199 |80 |0 |0 |0 |0 | |
| |4 | └─FUNCTION_TABLE |B |199 |1 |0 |0 |0 |0 | |
| ============================================================================================================== |
| Outputs & filters: |
| ------------------------------------- |
| 0 - output([T_FUN_COUNT(*)]), filter(nil), rowset=256 |
| group(nil), agg_func([T_FUN_COUNT(*)]) |
| 1 - output(nil), filter(nil), rowset=256 |
| conds(nil), nl_params_(nil), use_batch=false |
| 2 - output(nil), filter(nil) |
| value(GENERATOR(cast(:0, BIGINT(-1, 0)))) |
| 3 - output(nil), filter(nil), rowset=256 |
| 4 - output(nil), filter(nil) |
| value(GENERATOR(cast(:1, BIGINT(-1, 0)))) |
+--------------------------------------------------------------------------------------------------------------------+