求怎样使用LogMiner工具获取Oracle日志

[复制链接]
查看11 | 回复1 | 2008-1-2 17:35:53 | 显示全部楼层 |阅读模式
我是一个新手,请各位大虾多指教。最好详细些
谢谢。
回复

使用道具 举报

千问 | 2008-1-2 17:35:53 | 显示全部楼层
安装logminer
$ORACLE_HOME/rdbms/admin/dbmslm.sql
$ORACLE_HOME/rdbms/admin/dbmslmd.sql
show parameter utl;//查看路径
//生成数据字典文件
exec dbms_logmnr_d.build('dic.ora','f:\oracle')
//查看日志
select * from v$log
select * from v$logfile
//创建要分析的日志文件列表
EXEC dbms_logmnr.add_logfile('E:\oracle\oradata\pc06\REDO01.LOG', dbms_logmnr.new);
//添加其他日志文件到列表
EXEC dbms_logmnr.add_logfile( logfilename=>'E:\oracle\oradata\pc06\REDO02.LOG', options=>dbms_logmnr.addfile);
这里的options选项有三个参数可以用:
NEW - 表示创建一个新的日志文件列表
ADDFILE - 表示向这个列表中添加日志文件
dbms_logmnr.removefile - 用于移出用于分析的日志文件。
//使用logminer进行日志分析
exec dbms_logmnr.start_logmnr(dictfilename=>'f:\oracle\dic.ora');
//数据比较多,加日期参数
exec dbms_logmnr.start_logmnr(dictfilename=>'f:\oracle\dic.ora' , starttime => to_date('2006-9-7 00:00:00','YYYY-MM-DD HH24:MI:SS'),endtime => to_date('2006-9-7 12:00:00','YYYY-MM-DD HH24:MI:SS'));
//查询
SELECT operation,
sql_redo,
sql_undo
FROM V$logmnr_contents
WHERE seg_name = 'AAA';//表名
//关闭
BEGIN
dbms_logmnr.end_logmnr;
end;
//附加包的说明,以上代码要在sys用户下使用,我也刚学了一下LogMiner工具获取Oracle日志,
//整理一下给你,希望对你有帮助。
/////////////////////////////////////////////////////////
dbms_logmnr.add_lgfile( //该过程用于为日志分析列表
logfilename in varchar2,
options in binary_integer dafalt addfile); //dbms_logmnr.new 创建日志 //dbms_logmnr.addfile //增加 dbms_logmnr.remmovefile //删除
/////////////////////////////////////////////////////////
dbms_logmnr,start_logmnr(//启动logminer会话
starscn, //指定日志分析起始scn值
endrscn,//指定日志分析结束scn值
starttime,//起始时间
endtime, //终止时间
dictfilename,//日志分析的字典
options,//分析选项
)
/////////////////////////////////////////////////////////
dbbms_logmnr.end_logmnr;//结束logminer会话
/////////////////////////////////////////////////////////
bdms_logmnr.mine_value(//摘取的信息
sql_redo_undo in raw,//摘取的数据(redo_value 或 undo_value)
column_name in varchar2 default '' }
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行