Oracle 日志挖掘 logmnr

来源:这里教程网 时间:2026-03-03 16:18:18 作者:

    最简洁的Oracle日志挖掘方法,无需数据字典,无需指定归档日志路径,快速获取 曾经执行过的SQL

    --  #启动日志挖掘  --指定开始时间点的方式  --提交过之后的才会显示
    begin
       sys.dbms_logmnr.start_logmnr(
       startTime => to_date( '2019-08-19 18:30:00', 'yyyy-mm-dd hh24:mi:ss'),
       endTime   => to_date( '2019-08-19 19:30:00', 'yyyy-mm-dd hh24:mi:ss'),
       options=>dbms_logmnr.dict_from_online_catalog+dbms_logmnr.continuous_mine+dbms_logmnr.print_pretty_sql+dbms_logmnr.committed_data_only);
    end;
    /
    --  #查看挖掘日志内容
     select  timestamp,
           session#,
           serial#,
           commit_scn,
           username,
           seg_owner,
           seg_name,
           operation,
        -- sql_undo,
           sql_redo
      from v $logmnr_contents
     where sql_redo <>  '/* No SQL_REDO for temporary tables */'
    -- and sql_redo  like  '%xxxx%'
       and rownum < 1000;
    --  #结束当前会话的日志分析  --断开会话也会自动结束
    begin 
       dbms_logmnr.end_logmnr;   
    end;
    /

相关推荐