暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

Oracle logminer 异机日志挖掘分析

原创 大讲堂 2019-11-09
4050

1、把字典放到在线日志文件

SQL> EXECUTE DBMS_LOGMNR_D.BUILD( -OPTIONS=> DBMS_LOGMNR_D.STORE_IN_REDO_LOGS);> PL/SQL procedure successfully completed. --执行命令后产生的日志 Mon May 21 16:45:39 2018 ...... Mon May 21 16:46:12 2018 Mon May 21 16:46:12 2018 Logminer Bld: Done --查看字典所在归档文件 SQL> SELECT NAME FROM V$ARCHIVED_LOG WHERE DICTIONARY_BEGIN='YES'; NAME -------------------------------------------------------------------------------- +DG_ARCH/xxdb/xxdb1_25077_90789xxxx.arc SQL> SELECT NAME FROM V$ARCHIVED_LOG WHERE DICTIONARY_END='YES'; NAME -------------------------------------------------------------------------------- +DG_ARCH/xxdb/xxdb1_25078_90789xxxx.arc SQL> --日志文件大小 -rw-r----- 1 oracle asmadmin 24M May 21 16:50 xxdb1_25077_90789xxxx.dbf -rw-r----- 1 oracle asmadmin 1.6M May 21 16:51 xxdb1_25078_90789xxxx.dbf --copy日志文件到本地磁盘 rman copy 归档 copy archivelog '+DG_ARCH/xxdb/xxdb1_25077_90789xxxx.arc' to '/tmp/xxdb1_25077_90789xxxx.dbf'; copy archivelog '+DG_ARCH/xxdb/xxdb1_25078_90789xxxx.arc' to '/tmp/xxdb1_25078_90789xxxx.dbf';

2、添加归档文件,并进行日志分析

EXECUTE DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME =>'/optt/xxdb/arch/xxdb1_25077_90789xxxx.dbf',OPTIONS => DBMS_LOGMNR.NEW) EXECUTE DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME =>'/optt/xxdb/arch/xxdb1_25078_90789xxxx.dbf',OPTIONS => DBMS_LOGMNR.ADDFILE) EXECUTE DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME =>'/optt/xxdb/arch/1_24777_90789xxxx.dbf',OPTIONS => DBMS_LOGMNR.ADDFILE); EXECUTE DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME =>'/optt/xxdb/arch/1_24778_90789xxxx.dbf',OPTIONS => DBMS_LOGMNR.ADDFILE); EXECUTE DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME =>'/optt/xxdb/arch/1_24779_90789xxxx.dbf',OPTIONS => DBMS_LOGMNR.ADDFILE); EXECUTE DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME =>'/optt/xxdb/arch/2_24457_90789xxxx.dbf',OPTIONS => DBMS_LOGMNR.ADDFILE); EXECUTE DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME =>'/optt/xxdb/arch/2_24458_90789xxxx.dbf',OPTIONS => DBMS_LOGMNR.ADDFILE);

3、使用在线日志数据字典启动logminer进行分析

execute dbms_logmnr.start_logmnr(OPTIONS => DBMS_LOGMNR.DICT_FROM_REDO_LOGS, StartTime =>to_date('2018-05-07 09:40:00','YYYY-MM-DD HH24:MI:SS'), EndTime =>to_date('2018-05-07 10:00:00','YYYY-MM-DD HH24:MI:SS ')); --注意需要加参数DBMS_LOGMNR.DICT_FROM_REDO_LOGS

4、创建一张表来存储分析结果

create table t3 as select * from v$logmnr_contents;

5、过滤分析结果

select * from sys.t3 where sql_redo like '%APP_ONDEMAND_ORDER%' AND sql_redo like '%11180507094646032798%'; --下面是记录信息,可以定位到操作人详细登录信息及操作语句
最后修改时间:2019-11-09 21:30:08
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论