dbms_logmnr和dbms_logmnr_d

本文介绍了Oracle LogMiner工具的使用方法,包括如何通过dbms_logmnr和dbms_LOGMNR_D来分析重做日志和归档日志记录的事务变化,以便追踪误操作的时间点和用户活动,并还原DML操作。文章详细解释了LogMiner的主要过程和函数,如add_logfile、start_logmnr等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通过dbms_logmnr 和 dbms_LOGMNR_D 可以分析重做日志和归档日志所记载的事务的变化,
最终确定误操作的时间,跟踪用户操作,跟踪事务并还原dml操作;

– 1,add_logfile
/*
该过程为分析列表增加或删除日志文件;
或者建立日志分析列表
options –{
dbms_logmnr.new 建立日志分析列表
dbms_logmnr.addfile 添加日志文件
dbms_logmnr.removefile 删除日志文件
}
*/
dbms_logmnr.add_logfile(LogFileName => ,Options => binary_integer);

– 2,start_loginmnr
/*
该过程为开始logMiner会话;
*/
dbms_logmnr.start_logmnr(
startScn => ,
endScn => ,
startTime => ,
endTime => ,
DictFileName => ,
Options =>
);

– 3,end_loginmnr
/*
该过程为结束logMiner会话;
*/
dbms_logmnr.end_logmnr;

– 4,mine_value
/*
该函数返回要摘取得列信息;在logMiner会话启动之后调用
*/

dbms_logmnr.mine_value(
   sql_redo_undo => ,
   column_name => 
  );  

– 5,column_present
/*
该函数(number) 确定列是否存在数据的redo或undo部分;
*/
dbms_logmnr.column_present(sql_redo_undo => ,column_name => );

– 6,remove_logfile
/*
该过程用于删除日志文件;
*/
dbms_logmnr.remove_logfile(LogFileName => );


–7 build
/*
用于建立字典文件
*/
dbms_logmnr_d.build(dictionary_filename => ,dictionary_location => ,options => );

–8 set_tablespace
/*
用于改变logminer表所在的表空间;
*/
dbms_logmnr_d.set_tablespace(new_tablespace => );


/*
使用logminer实例
在logminer之间建立temp表 ,然后执行dml操作和日志切换操作,生成归档日志;
*/

create table temp (
cola number(10),
colb varchar2(100)
);

alter system switch logfile;
insert into temp values(1,’abc’);
update temp set cola = 2;
commit;
alter system switch logfile;
delete from temp;
alter system switch logfile;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值