ITPub博客

首页 > 数据库 > Oracle > oracle使用触发器监控哪用户删除了表记录

oracle使用触发器监控哪用户删除了表记录

Oracle 作者:hlq415714067 时间:2014-08-25 13:07:16 0 删除 编辑
    最近,客户反映有一个表的记录被人修改了,想查归档日志,又比较麻烦,叫我们做了一个触发器来监控一下这个表,看看是谁做的事。
    于是我们就用一个触发器帮他解决了这个问题

1、创建接收删除用户的表信息
SQL> create table tab_mon_midify as (select sid,username,program,machine,'000.000.000.000'  ipadd,sysdate moditime from v$session where 0=1);
Table created.

该表分别记录了,删除的用户、机器名、ip及删除时间等

2、创建触发器

SQL> create or replace trigger tab_mon_mod_tr
    1  before delete or update on BPMDB.T_MDM_SAP_GLACCOUNT
    2  for each row

    3  begin

    4   insert into tab_mon_midify select sid,username,program,machine,sys_context('userenv','ip_address'),sysdate from v$session where audsid = userenv('sessionid');
    5  end;
    6   /


3、建好触发器后,就可以监控对表的修改了,一旦修改,记录会自动插入监控表里面!

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/13189147/viewspace-1257237/ ,如需转载,请注明出处,否则将追究法律责任。

上一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2013-11-22

  • 博文量
    3
  • 访问量
    6020