xinmencuoxue 发表于 2009-10-24 17:58

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

有一个表中的数据总是莫名其妙的少了
向跟踪一下,删除时候使用那个用户,何时被删除,用户的IP地址或者主机名
怎样做?
能不能用触发器实现?
十分感谢

liaosnet 发表于 2009-10-24 21:07

就是用触发器实现....

user 直接表示用户..
current 是当时时间..
IP/tty 应该在dbinfo()里有.

xinmencuoxue 发表于 2009-10-25 18:31

原帖由 liaosnet 于 2009-10-24 21:07 发表 http://bbs2.chinaunix.net/images/common/back.gif
就是用触发器实现....

user 直接表示用户..
current 是当时时间..
IP/tty 应该在dbinfo()里有.
能不能举个例子?

liaosnet 发表于 2009-10-25 21:03

建一个与原表类似,在之前加上3个字段的备份表,然后建trigger

假设原表为t1(col1,col2),备份表为(deltime,users,tty,col1,col2)

create trigger t1_tri delete on t1 referencing
    old as old_bak
    for each row
      (
      insert into t2 (deltime,users,tty,col1,col2)values (CURRENT year to second , user, dbinfo("dbhostname"),old_bak.col1,old_bak.col2 ));



[ 本帖最后由 liaosnet 于 2009-10-25 21:04 编辑 ]

vbirding 发表于 2009-10-27 11:17

回复 #4 liaosnet 的帖子

建trigger我知道肯定能監控,這不是trigger多了也影響性能嘛
想問下用onlog這個工具可以分析出來不?
曾對一個2G多onlog文件進行分析,徒勞無功,想向高手求證下onlog到底行不

xinmencuoxue 发表于 2009-10-28 19:40

IP地址怎么取出来阿?

liaosnet 发表于 2009-10-28 23:54

回复 #5 vbirding 的帖子

onlog没这个功能~~

xinmencuoxue 发表于 2009-10-29 08:38

IP地址怎么取出来阿?

liaosnet 发表于 2009-10-29 09:44

回复 #8 xinmencuoxue 的帖子

我不知道我是不是白写了....

dbinfo("dbhostname")

xinmencuoxue 发表于 2009-10-29 22:20

原帖由 liaosnet 于 2009-10-29 09:44 发表 http://bbs2.chinaunix.net/images/common/back.gif
我不知道我是不是白写了....

dbinfo("dbhostname")
这个出来的是主机名称“henan_db”
不是用户的 IP地址。
我想获得是登录用户的。
谢谢
页: [1] 2
查看完整版本: 某个表数据被删除或者更新的时候,怎样能实时监控室那个用户作的?