Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/87.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/oracle/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql 监视谁正在向表中写入内容_Sql_Oracle - Fatal编程技术网

Sql 监视谁正在向表中写入内容

Sql 监视谁正在向表中写入内容,sql,oracle,Sql,Oracle,我坐在一个oracle数据库上,数据库中有很多存储过程。我没有写它们,也不能编辑它们 我可以看到,数据正在被写入一个表中,但我不知道是什么进程在这样做,我确信这是一个自动进程,没有用户在积极地这样做 我还知道用于写入数据的过程 是否有任何方法可以监视调用该过程的进程? 我想这是一个事件,但我不确定 BR Kresten您可以先检查DBMS\u调度程序,看看它们是否在那里启动 Select job_name "Job name", owner

我坐在一个oracle数据库上,数据库中有很多存储过程。我没有写它们,也不能编辑它们

我可以看到,数据正在被写入一个表中,但我不知道是什么进程在这样做,我确信这是一个自动进程,没有用户在积极地这样做

我还知道用于写入数据的过程

是否有任何方法可以监视调用该过程的进程? 我想这是一个事件,但我不确定


BR Kresten

您可以先检查DBMS\u调度程序,看看它们是否在那里启动

Select
   job_name             "Job name",
   owner                "Owner",
   decode(enabled,'TRUE','Yes','FALSE','No')            "Enabled?",
   to_char(last_start_date,'MM/DD/YYYY HH24:MI:SS')     "Last run",
   to_char(next_run_date,'MM/DD/YYYY HH24:MI:SS')       "Next date",
   program_owner        "Program owner",
   program_name         "Program name",
   job_type             "Job type",
   job_action           "Job action",
   schedule_name        "Schedule name",
   start_date           "Start date",
   repeat_interval      "Repeat interval"
from dba_scheduler_jobs order by 2, 3 desc, 4 desc;
另一种可能是对相关表启用审核,请参见Oracle文档中的以下示例

您可以通过dba_common_audit_trail视图查看审计记录


请注意,审核可能会产生严重的性能开销,因此请了解如何启用和禁用它。你可能不想让它全职工作

您可以先检查DBMS_调度程序,看看它们是否在那里启动

Select
   job_name             "Job name",
   owner                "Owner",
   decode(enabled,'TRUE','Yes','FALSE','No')            "Enabled?",
   to_char(last_start_date,'MM/DD/YYYY HH24:MI:SS')     "Last run",
   to_char(next_run_date,'MM/DD/YYYY HH24:MI:SS')       "Next date",
   program_owner        "Program owner",
   program_name         "Program name",
   job_type             "Job type",
   job_action           "Job action",
   schedule_name        "Schedule name",
   start_date           "Start date",
   repeat_interval      "Repeat interval"
from dba_scheduler_jobs order by 2, 3 desc, 4 desc;
另一种可能是对相关表启用审核,请参见Oracle文档中的以下示例

您可以通过dba_common_audit_trail视图查看审计记录


请注意,审核可能会产生严重的性能开销,因此请了解如何启用和禁用它。你可能不想让它全职工作

记录上有时间戳吗?您可以将时间与并发请求日志进行比较,以查看并发请求是否正在调用该过程。或者可能是触发器正在调用SP。我想您需要的是启用跟踪和检查会话。我不确定在哪里可以找到请求日志。是文件还是表格?记录上有时间戳吗?您可以将时间与并发请求日志进行比较,以查看并发请求是否正在调用该过程。或者可能是触发器正在调用SP。我想您需要的是启用跟踪和检查会话。我不确定在哪里可以找到请求日志。是文件还是桌子?