在 oracle 中,可以通过以下方法查询存储过程执行记录时间:使用 dbms_profiler 包获取执行统计信息。使用 v$profiler 视图获取正在执行的 sql 语句和 pl/sql 单元的统计信息。使用 oracle 监视器查看会话事件历史记录中的相关事件。使用 audit 插件审核存储过程执行并获取审核文件中的信息。
如何查询 Oracle 中存储过程执行记录时间
在 Oracle 中,您可以通过以下方法查询存储过程执行记录时间:
1. 使用 DBMS_PROFILER 包
DBMS_PROFILER 包提供了查看存储过程执行统计信息的功能,包括执行时间。要使用此包:
<code class="sql">BEGIN -- 开始剖析 DBMS_PROFILER.START_PROFILING; -- 执行您的存储过程 -- ... -- 结束剖析并获取结果 DBMS_PROFILER.END_PROFILING; END;</code>
登录后复制
结果将存储在 DBMS_PROFILER.RESULTS 表中,您可以查询该表以获取存储过程的执行时间:
<code class="sql">SELECT * FROM DBMS_PROFILER.RESULTS WHERE OBJECT_TYPE = 'PROCEDURE' AND OBJECT_NAME = '您的存储过程名称';</code>
登录后复制
2. 使用 V$PROFILER 视图
V$PROFILER 视图提供有关当前运行或最近运行的会话中正在执行的 SQL 语句和 PL/SQL 单元的统计信息。要使用此视图:
<code class="sql">SELECT * FROM V$PROFILER WHERE OBJECT_TYPE = 'PROCEDURE' AND OBJECT_NAME = '您的存储过程名称';</code>
登录后复制
3. 使用 Oracle 监视器
Oracle 监视器是一个图形用户界面 (GUI),它允许您查看有关数据库性能的各种统计信息,包括存储过程执行时间。要使用 Oracle 监视器:
- 启动 Oracle 监视器并连接到您的数据库。
- 展开“会话”面板并选择执行存储过程的会话。
- 在“事件历史记录”选项卡中,查找与您的存储过程执行相关的事件。
4. 使用 AUDIT 插件
AUDIT 插件可让您审核数据库中的活动,包括存储过程的执行。要使用 AUDIT 插件:
<code class="sql">-- 启用 AUDIT 插件 ALTER SYSTEM SET AUDIT_TRAIL='DB' SCOPE=SPFILE; -- 启用存储过程审核 AUDIT EXECUTE ON PROCEDURE BY PUBLIC; -- 执行您的存储过程 -- ... -- 禁用存储过程审核 AUDIT EXECUTE ON PROCEDURE BY PUBLIC REVOKE; -- 禁用 AUDIT 插件 ALTER SYSTEM SET AUDIT_TRAIL='NONE' SCOPE=SPFILE;</code>
登录后复制
您可以在审核文件中找到有关存储过程执行时间的信息。
以上就是oracle查询存储过程执行记录时间怎么查的详细内容,更多请关注叮当号网其它相关文章!
文章来自互联网,只做分享使用。发布者:weapp,转转请注明出处:https://www.dingdanghao.com/article/372381.html