对rename的表进行日志挖掘

表重命名:
alter table aa rename to a;


目的:
查询什么时间,谁,对a表,进行了rename。






对ddl操作进行挖掘:
需要开启补充日志功能:
SELECT SUPPLEMENTAL_LOG_DATA_MIN FROM V$DATABASE;---查看是否开启了补充日志的功能






数据库级补充日志分为:最小补充日志、标识关键字段补充日志
        最小补充日志:是最基本的一种数据库级补充日志,而 LogMiner 正是依赖最小补充日志工作服务的(即识别 行移动 行迁移)。
        
        (关于补充日志,在此不做详细介绍,如有兴趣,可自行研究)


开启补充日志功能:--最小补充日志


ALTER DATABASE ADD SUPPLEMENTAL LOG DATA;


关闭补充日志功能:
ALTER DATABASE DROP SUPPLEMENTAL LOG DATA;


添加日志文件:
select 'exec dbms_logmnr.add_logfile('''||member||''')' from v$logfile;




exec dbms_logmnr.add_logfile('+DGDATA/wyq/redo01.log')
exec dbms_logmnr.add_logfile('+DGDATA/wyq/redo02.log')
exec dbms_logmnr.add_logfile('+DGDATA/wyq/redo03.log')


开始日志挖掘:
exec dbms_logmnr.start_logmnr();
查询:
select scn,sql_redo from v$logmnr_contents where seg_name='CC'


select to_char(last_ddl_time,'yyyy-MM-DD hh24:mi:ss') from dba_objects_ae where object_name='CCC';




col username for a10
col os_username for a10
col machine_name for a10
col sql_redo for a30
select username,os_username,machine_name,sql_redo from v$logmnr_contents where sql_redo like '%rename%';


关闭日志挖掘:
exec dbms_logmnr.end_logmnr();


备注:
关于是哪个ip发出的,可以根据查询的时间,在listener.log中进行筛选查询。

备注:此次的试验,源自对一个朋友的协助,希望能帮助他解决他遇到的问题。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29677883/viewspace-2123976/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29677883/viewspace-2123976/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值