You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何查找调用Oracle PL/SQL存储过程monitoring_5_min的触发源?

查找调用Oracle存储过程monitoring_5_min的对象

以下是几种Oracle系统层面的方法,帮你追踪调用该存储过程的对象:

1. 检查Oracle内置调度任务

如果是Oracle自带的DBMS_SCHEDULER调度任务触发调用,可通过以下视图查询:

  • 直接查找调用该过程的调度作业:
SELECT job_name, program_name, schedule_name, enabled, last_start_date, next_run_date
FROM dba_scheduler_job_details
WHERE job_action LIKE '%monitoring_5_min%'
OR (program_name IS NOT NULL AND EXISTS (
    SELECT 1 FROM dba_scheduler_programs
    WHERE program_name = dba_scheduler_job_details.program_name
    AND program_action LIKE '%monitoring_5_min%'
));
  • 查看定义中包含该过程的调度程序:
SELECT program_name, program_action, number_of_arguments
FROM dba_scheduler_programs
WHERE program_action LIKE '%monitoring_5_min%';

2. 分析PL/SQL对象依赖关系

如果调用来自其他数据库对象(比如存储过程、函数、触发器),可以通过依赖视图直接定位:

SELECT owner, name, type
FROM dba_dependencies
WHERE referenced_name = 'MONITORING_5_MIN'
AND referenced_type = 'PROCEDURE'
AND owner NOT IN ('SYS', 'SYSTEM'); -- 可根据需要调整过滤条件

这个视图会列出所有直接依赖该存储过程的数据库对象。

3. 检索近期PL/SQL调用记录

v$sql并非只记录纯SQL,包含该过程调用的PL/SQL块也会被存储,你可以用以下查询过滤:

SELECT sql_text, last_active_time, parsing_schema_name
FROM v$sql
WHERE UPPER(sql_text) LIKE '%MONITORING_5_MIN%'
AND sql_text NOT LIKE '%v$sql%'; -- 排除当前查询本身

若需要聚合的调用统计,可使用v$sqlarea:

SELECT sql_text, executions, last_active_time
FROM v$sqlarea
WHERE UPPER(sql_text) LIKE '%MONITORING_5_MIN%';

4. 临时启用审计追踪(需权限)

如果上述方法未找到线索,可以临时启用审计来捕获所有执行该过程的操作:

  • 开启审计:
AUDIT EXECUTE ON monitoring_5_min BY ACCESS;
  • 查询审计记录:
SELECT username, timestamp, action_name, obj_name
FROM dba_audit_trail
WHERE obj_name = 'MONITORING_5_MIN'
AND action_name = 'EXECUTE';
  • 完成追踪后关闭审计,避免不必要的性能开销:
NOAUDIT EXECUTE ON monitoring_5_min;

权限与补充说明

  • 以上查询大多需要DBA级权限,若没有,可将DBA_前缀替换为ALL_(如all_scheduler_job_details),但只能看到你有权限访问的对象。
  • 若调用来自外部Web服务,数据库层面只能记录到会话的基本信息(如v$session中的program、machine字段),无法直接关联到具体服务,除非服务调用时设置了特定标识(如client_info)。

内容的提问来源于stack exchange,提问作者Alex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 22:45:31