免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12
最近访问板块 发新帖
楼主: xinmencuoxue
打印 上一主题 下一主题

某个表数据被删除或者更新的时候,怎样能实时监控室那个用户作的? [复制链接]

论坛徽章:
1
数据库技术版块每日发帖之星
日期:2015-12-09 06:20:00
11 [报告]
发表于 2009-11-04 19:27 |只看该作者
原帖由 xinmencuoxue 于 2009-10-29 22:20 发表

这个出来的是主机名称“henan_db”
不是用户的 IP地址。
我想获得是登录用户的。
谢谢

我顶

论坛徽章:
0
12 [报告]
发表于 2009-11-10 15:44 |只看该作者
使用informix的审计功能区跟踪那个表。

论坛徽章:
11
金牛座
日期:2015-03-19 16:56:22数据库技术版块每日发帖之星
日期:2016-08-02 06:20:00数据库技术版块每日发帖之星
日期:2016-04-24 06:20:00数据库技术版块每日发帖之星
日期:2016-04-13 06:20:00IT运维版块每日发帖之星
日期:2016-04-13 06:20:00数据库技术版块每日发帖之星
日期:2016-02-03 06:20:00数据库技术版块每日发帖之星
日期:2015-08-06 06:20:00季节之章:春
日期:2015-03-27 15:54:57羊年新春福章
日期:2015-03-27 15:54:37戌狗
日期:2015-03-19 16:56:41数据库技术版块每日发帖之星
日期:2016-08-18 06:20:00
13 [报告]
发表于 2009-11-11 00:33 |只看该作者

回复 #12 yhl71 的帖子


不怕数据库GAME OVER...

论坛徽章:
0
14 [报告]
发表于 2009-11-13 11:42 |只看该作者

回复 #1 xinmencuoxue 的帖子

create table
# cat zytrace.sql
{ TABLE "tiptop".zytrace row size = 75 number of columns = 8 index size = 0 }
create table "tiptop".zytrace
  (
    tabname char(18 ),
    acttype char(1 ),
    sid integer,
    username char(8 ),
    pid integer,
    hostname char(16 ),
    tty char(16 ),
    modtime datetime year to second
  )lock mode row;
revoke all on "tiptop".zytrace from "public";
grant all on zytrace to public ;
revoke alter on zytrace from public ;

=================================
Create trigger

#--------------------------------------------------------------------------#
create trigger "tiptop".tri_zy_ins insert on "tiptop".zy_file
    after
        (
        insert into db1:"tiptop".zytrace (tabname,acttype,sid,
    username,pid,hostname,tty,modtime) select 'zy_file' ,'I' ,x0.sid ,x0.username
    ,x0.pid ,x0.hostname ,x0.tty ,CURRENT year to fraction(3) from sysmaster:
    "informix".syssessions x0 where (x0.sid = DBINFO ('sessionid') ) );

create trigger "tiptop".tri_zy_upd update on "tiptop".zy_file
    after
        (
        insert into db1:"tiptop".zytrace (tabname,acttype,sid,
    username,pid,hostname,tty,modtime) select 'zy_file' ,'U' ,x0.sid ,x0.username
    ,x0.pid ,x0.hostname ,x0.tty ,CURRENT year to fraction(3) from sysmaster:
    "informix".syssessions x0 where (x0.sid = DBINFO ('sessionid') ) );

create trigger "tiptop".tri_zy_del delete on "tiptop".zy_file
    after
        (
        insert into db1:"tiptop".zytrace (tabname,acttype,sid,
    username,pid,hostname,tty,modtime) select 'zy_file' ,'D' ,x0.sid ,x0.username
    ,x0.pid ,x0.hostname ,x0.tty ,CURRENT year to fraction(3) from sysmaster:
    "informix".syssessions x0 where (x0.sid = DBINFO ('sessionid') ) );
#----------------------------------------------------------------------------#
RUN:   N/下頁  R/重新執行  E/離開
顯示出下一頁的查詢結果.

--------------------- db1 --------------------- 按 CTRL-W 鍵看輔助說明 -------


tabname   zy_file
acttype   D
sid       319151
username  kevin
pid       11388
hostname  apserver1
tty       /dev/pts/265
modtime   2009-04-08 18:44:06

[ 本帖最后由 p3505 于 2009-11-13 12:06 编辑 ]

论坛徽章:
0
15 [报告]
发表于 2010-01-15 19:29 |只看该作者
用审计功能吧,

比如我这里的业务就是这样分类:
先做好角色分离:
前台连接用户,批作业用户,后台维护人员A,后台维护人员B,后台维护人员C.....

开启审计时,只需要对 后台维护人员A,后台维护人员B,后台维护人员C进行审计就行了,数据库不会OVER。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP