本文主要是介绍oracle学习笔记-重做日志分析(7),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
通过分析重做日志,将二进制的重做日志以文本的形式显示出来,以跟踪某个用户的DML或DDL操作,或者在某个特定数据库对象上的操作,或者撤销用户在某个特定数据库对象上的操作。
1、 创建字典文件
设置字典文件的存储位置:
SQL> ALTER SYSTEM SETutl_file_dir='D:/temp/dict' SCOPE=spfile;
调用程序包DBMS_LOGMNR_D中的BUILD创建字典文件:
SQL> BEGIN
DBMS_LOGMNR_D.BUILD(dictionary_filename=>'dict.ora',
dictionary_location=>'d:/temp/dict',
options=>DBMS_LOGMNR_D.STORE_IN_FLAT_FILE);
END;
options参数用来指定字典文件为文本文件(STORE_IN_FLAT_FILE),或者为重做日志文件(STORE_IN_REDO_LOGS);
2、 创建分析列表
SQL> BEGIN
DBMS_LOGMNR.ADD_LOGFILE(LOGFILENAME=>'D:\ORACLE\LSJ\ORADATA\LSJCOM\REDO01.LOG',
OPTIONS=>DBMS_LOGMNR.NEW);
END;
如果向分析列表中添加第一个参数,options的参数值为NEW,如果后面再添加参数,则参数值为ADDFILE。
DBMS_LOGMNR.REMOVE_LOGFILE(LOGFILENAME=>'D:\ORACLE\LSJ\ORADATA\LSJCOM\REDO01.LOG')可以将日志从分析列表中删除。
3、 开始日志分析
SQL> BEGIN
DBMS_LOGMNR.START_LOGMNR(DICTFILENAME=>'D:/temp/dict/dict.ora');
END;
其中还可以指定可选参数starttime和endtime来限定日志分析的时间范围,指定可选参数sndscn和endscn指定分析的scn范围。
4、 查看日志分析结果
日志分析结果存储在动态性能视图V$LOGMNR_CONTENTS中。
注意的是,分析的结果都保存在SGA中,这些信息都是临时的,会话结束或者本次日志分析结束,这些信息都会消失。
5、 结束日志分析
SQL>EXEC DBMS_LOGMNR.END_LOGMNR;
这篇关于oracle学习笔记-重做日志分析(7)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!