1、進行初始化設定:開啟附加日誌,設定logminer的表空間,設定utl_file_dir引數的值;
sql> create directory utlfile as 'd:\oracle\oradata\practice\logmnr';
sql> alter system set utl_file_dir='d:\oracle\oradata\logmnr' scope=spfile;
2、提取乙個字典:將字典檔案提取為flat file或redo日誌。(或者直接使用online catalog);
cmd>connect / as sysdba
sql> execute dbms_logmnr_d.build(dictionary_filename => 'dictionary.ora', dictionary_location =>'d:\oracle\oradata\logmnr');
sql> alter session set nls_date_format='yyyy-mm-dd hh24:mi:ss';
session altered.
查詢日誌組:
3、指定需要分析的redo日誌檔案,利用dbms_logmnr.add_logfile來新增日誌;
4、開始logminer:exec dbms_logmnr.start_logmnr來啟動logminer;:
sql> exec dbms_logmnr.start_logmnr(options=>dbms_logmnr.dict_from_online_catalog+dbms_logmnr.committed_data_only);
5、查詢檢視進行結果分析:
6、結束logminer:通過執行execute dbms_logmnr.end_logmnr來結束分析。
sql>execute dbms_logmnr.end_logmnr;
注意:oracle的logminer分析時分為無限制條件和限制條件兩種。要想精確如按照scn,按照時間點查詢,需要啟用帶限制條件的方式。
例如:我們僅僅分析2023年6月1日的日誌,:
execute dbms_logmnr.start_logmnr(
dictfilename => dictfilename=>『d:…\practice\logmnr\dictionary.ora』,
starttime =>to_date(『2019-6-1 00:00:00』,『yyyy-mm-dd hh24:mi:ss』)
endtime =>to_date(』『2019-6-1 23:59:59』,'yyyy-mm-dd hh24:mi:ss '));
同樣結果查詢也可按使用者,按表查詢結果:
select sql_redo from v$logmnr_contents where username=『scott』 and tablename=『emp』;
但我查詢的時候發現ogmnr_contents下記錄到的這兩個欄位沒提取到結果,猜想是不是需要補充日誌supplemental log;
如大家有興趣,可以嘗試使用使用online catalog(聯機日誌)的方式再做一次實驗一下。
適用於源庫與目標庫不同這樣的方式
execute dbms_logmnr_d.build( -
options=> dbms_logmnr_d.store_in_redo_logs);
看字典存放到了哪個歸檔日誌:
select name from v$archived_log where dictionary_begin='yes';
select name from v$archived_log where dictionary_end='yes';
execute dbms_logmnr.start_logmnr(-
options => dbms_logmnr.dict_from_online_catalog);
部分參考: 記一次日誌
ifconfig am start a android.settings.settings mount o remount,rw system adb connect 192.168.2.186 5555 echo 0 proc sys kernel printk r 3288 韌體工具公升級,如果...
記一次除錯
這是我最近幾個月來遇到的最棘手的乙個問題 昨天花了4個小時找出第一層次的原因 這個糾結啊,本來和老婆說好準時下班回家吃飯的,結果被這個問題拖了老久。這是乙個gradle的plugin,用來resolve公司內部的dependency的,弄完了跑測試專案的,拋乙個npe,而且npe還不在自己的 裡面。...
記一次 EqualsAndHashCode的疑惑
lombok的使用真的是讓開發人員欲罷不能,乙個 data不管有多少屬性全部搞定,以後加字段也不用從新生成get和set方法。不過這裡還是有乙個小坑需要注意一下,舉個例子 public class equalsandhashcodetest data noargsconstructor access...