在Oracle中创建跟踪客户端IP地址的触发器


若果要让v$logmnr_contents中的session_info记录客户端ip,但SESSION_INFO中我们并不能直接看到IP,

不过我们还是有办法的,因为这个SESSION_INFO里面的内容其实是日志从V$SESSION视图里提取的,我们可以

在生产数据库中创建一个追踪客户端IP地址的触发器:


create or replace trigger on_logon_trigger

after logon on database

begin

dbms_application_info.set_client_info(sys_context('userenv', 'ip_address'));

end;

/

现在,我们就可以在V$SESSION视图的CLIENT_INFO列中看到新登录的客户端IP地址了。那么现在就可以在session_info 中看客户端的ip了


select SID,SERIAL#,USERNAME, PROGRAM,client_info from v$session


oracle视频教程请关注:http://u.youku.com/user_video/id_UMzAzMjkxMjE2.html