oracle database -----日誌挖掘


DML日誌挖掘:

1、添加database補充日誌
SQL>ALTER DATABASE ADD SUPPLEMENTAL LOG DATA; 
            
2、確定要分析的日誌範圍,添加日誌,分析
SQL>execute dbms_logmnr.add_logfile(logfilename=>'/redo1/redo05_1.log',options=>dbms_logmnr.new);

SQL>execute dbms_logmnr.add_logfile(logfilename=>'/archlog/arch_1.arc',options=>dbms_logmnr.addfile);

3、執行logmnr 分析
SQL>execute dbms_logmnr.start_logmnr(options=>dbms_logmnr.dict_from_online_catalog);

4、查詢分析結果,可以設置時間格式,也可以在顯示方式裏再確定格式.        
SQL>select username,scn,timestamp,sql_redo from v$logmnr_contents where seg_name='表名';

5、關閉日誌分析
SQL>execute dbms_logmnr.end_logmnr;

----------------------------------------------------------------------------------------------------------------------------
DDL日誌挖掘:

添加database補充日誌
SQL>ALTER DATABASE ADD SUPPLEMENTAL LOG DATA; 

1、新建目錄
$ mkdir /home/oracle/logmnr
SQL> alter system set utl_file_dir='/home/oracle/logmnr' scope=spfile; 

SQL> execute dbms_logmnr_d.build('dict01.ora','/home/oracle/logmnr',dbms_logmnr_d.store_in_flat_file);


2、添加日誌分析

SQL> execute dbms_logmnr.add_logfile(logfilename=>'歸檔文件',options=>dbms_logmnr.new); 

SQL> execute dbms_logmnr.add_logfile(logfilename=>'歸檔文件',options=>dbms_logmnr.addfile);      

3、執行分析

SQL> execute dbms_logmnr.start_logmnr(dictfilename=>'/home/oracle/logmnr/dict01.ora',options=>dbms_logmnr.ddl_dict_tracking);
    
4、查看分析結果                                                      
SQL>select username,scn,timestamp,sql_redo from v$logmnr_contents where seg_name='表名';
                                                              
5、關閉日誌分析
SQL> execute dbms_logmnr.end_logmnr;   


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章