ORACLE中logminner使用

来源:互联网 发布:薛城实验小学网络硬盘 编辑:程序博客网 时间:2024/06/03 17:16

1.创建DBMS_LOGMNR包
以下目录为ORACLE服务器端的安装目录
SQL>@D:/oracle/product/10.2.0/db_1/rdbms/admin/dbmslm.sql

2.创建相关数据字典
SQL>@D:/oracle/product/10.2.0/db_1/rdbms/admin/dbmslmd.sql

3.修改初始化参数UTL_FILE_DIR,指定分析数据的存放处
SQL>alter system set UTL_FILE_DIR='C:/oralog/logs' scope=spfile;

4.重启数据库
SQL>shutdown immediate
SQL>startup
startup mount;
5.创建数据字典文件

SQL>execute dbms_logmnr_d.build(dictionary_filename =>'sqltrace.ora',dictionary_location =>'C:/oralog/logs');

6.建立日志分析表

SQL> execute dbms_logmnr.add_logfile(options =>dbms_logmnr.new,logfilename =>'D:/oracle/product/10.2.0/oradata/oracle/REDO01.LOG');


7.添加用于分析的日志文件

SQL> execute dbms_logmnr.add_logfile(options =>dbms_logmnr.addfile,logfilename=>'D:/oracle/product/10.2.0/oradata/oracle/REDO02.LOG');

SQL> execute dbms_logmnr.add_logfile(options =>dbms_logmnr.addfile,logfilename =>'D:/oracle/product/10.2.0/oradata/oracle/REDO03.LOG');

execute dbms_logmnr.add_logfile(options =>dbms_logmnr.addfile,logfilename =>'D:/oracle/product/10.2.0/flash_recovery_area/ORACLE/archivelog/2008_02_02/O1_MF_1_18_3T7RG1QX_.ARC');

删除


SQL> execute dbms_logmnr.add_logfile(options =>dbms_logmnr.removefile,logfilenam

e =>'/opt/oracle/ora92/rdbms/ARC00011.001');


 8.启动LogMiner进行分析

SQL> execute dbms_logmnr.start_logmnr(dictfilename =>'C:/oralog/logs/sqltrace.ora',starttime =>to_date('2004062509:00:00','yyyymmdd hh24:mi:ss'),endtime =>to_date('20040625 22:00:00','yyyymmdd hh24:mi:ss'));
或者
SQL> execute dbms_logmnr.start_logmnr(dictfilename =>'C:/oralog/logs/sqltrace.ora')


execute dbms_logmnr.add_logfile(options => dbms_logmnr.addfile,logfilename =>'D:/oracle/product/10.2.0/flash_recovery_area/ORACLE/archivelog/2008_02_02/O1_MF_1_18_3T7RG1QX_.ARC');
dbms_logmnr.add_logfile(options => dbms_logmnr.addfile,logfilename =>'D:/oracle/product/10.2.0/flash_recovery_area/ORACLE/archivelog/20080128/28.arc');


9.参看分析结果

 select operation,sql_redo,sql_undo,TIMESTAMP from v$logmnr_contents where username='test' or table_name='TEST1' and timestamp>to_date('2008-01-28 09:00:00','yyyy-mm-dd hh24:mi:ss');
select username,count(username) from v$logmnr_contents  group by username
查看有几个日志文件

select member from v$logfile;
查看logminner正在操作哪个日志文件
 select filename from v$logmnr_logs;

10.结束分析

SQL> execute dbms_logmnr.end_logmnr;

一旦结束视图v$logmnr_contents中的分析结果也随之不再存在。

 

原创粉丝点击