DBMS_PROFILER包收集并存储在性能剖析会话中执行的关于PL/pgSQLSPL语句的性能信息。

您可以使用下列表中列出的函数和存储过程来控制剖析工具。

表 1. DBMS_PROFILER函数/存储过程
函数/存储过程 类型 返回类型 描述
FLUSH_DATA 函数、存储过程 Status code、exception 刷新当前会话中收集的性能数据。
GET_VERSION(major OUT, minor OUT) 存储过程 N/A 返回DBMS_PROFILER版本信息。
INTERNAL_VERSION_ CHECK 函数 Status code 确认DBMS_PROFILER的当前版本是否能与当前数据库兼容。
PAUSE_PROFILER 函数、存储过程 Status code、exception 暂停分析会话。
RESUME_PROFILER 函数、存储过程 Status code、exception 继续分析会话。
START_PROFILER(run comment, run commentl [, run number OUT ]) 函数、存储过程 Status code、exception 开始数据收集会话。
STOP_PROFILER 函数、存储过程 Status code、exception 停止分析会话及刷新性能信息到DBMS_PROFILER表和视图中。

DBMS_PROFILER包中的函数返回的是一个表示成功或失败的状态码。只有在DBMS_PROFILER存储过程执行失败时,才会产生异常。下表中列出了函数返回的状态码和消息,以及存储过程产生的异常信息。

表 2. DBMS_PROFILER状态码和异常信息
状态码 状态码说明 异常信息 描述
-1 error version version_mismatch 分析器版本与数据库不兼容。
0 success N/A 操作成功。
1 error_param profiler_error 参数错误。
2 error_io profiler_error 数据刷新失败。

FLUSH_DATA

在不终结分析器会话的情况下,FLUSH_DATA函数/存储过程会刷新从当前会话中收集的数据。数据将被刷新到PolarDB性能特性指南描述的表中。语法如下:
status INTEGER FLUSH_DATA

FLUSH_DATA
参数
参数名称 描述
status 返回的状态码。

GET_VERSION

GET_VERSION存储过程返回DBMS_PROFILER版本信息。语法如下:
GET_VERSION(major OUT INTEGER, minor OUT INTEGER)
参数
参数名称 描述
major DBMS_PROFILER主版本的数量。
minor DBMS_PROFILER次版本的数量。

INTERNAL_VERSION_CHECK

INTERNAL_VERSION_CHECK 函数用于确认DBMS_PROFILER的当前版本是否能与当前数据库兼容。语法如下:
status INTEGER INTERNAL_VERSION_CHECK
参数
参数名称 描述
status 返回的状态码。

PAUSE_PROFILER

PAUSE_PROFILER函数/存储过程用于暂停分析会话。语法如下:
status INTEGER PAUSE_PROFILER

PAUSE_PROFILER
参数
参数名称 描述
status 返回的状态码。

RESUME_PROFILER

RESUME_PROFILER 函数/存储过程用于继续分析会话。语法如下:
status INTEGER RESUME_PROFILER

RESUME_PROFILER
参数
参数名称 描述
status 返回的状态码。

START_PROFILER

START_PROFILER函数/存储过程用于开始数据收集会话。语法如下:
status INTEGER START_PROFILER(run_comment TEXT := SYSDATE,
  run_comment1 TEXT := '' [, run_number OUT INTEGER ])

START_PROFILER(run_comment TEXT := SYSDATE,
  run_comment1 TEXT := '' [, run_number OUT INTEGER ])
参数
参数名称 描述
run comment 给分析器会话的用户定义的注释。默认值为SYSDATE
run commentl 给分析器会话的额外用户定义的注释。默认值为TT
run number 分析器会话的数量。
status 返回的状态码。

STOP_PROFILER

STOP_PROFILER函数/存储过程用于停止分析会话及刷新性能信息到DBMS_PROFILER表和视图中。语法如下:
status INTEGER STOP_PROFILER

STOP_PROFILER
参数
参数名称 描述
status 返回的状态码。