本記錄僅供自己使用,有看不懂的朋友莫見怪,后期會做相應補充。
本機操作系統:win10
服務器操作系統:Linux
服務器數據庫:Oracle
一、找到日志文件
1、通過Xshell 6遠程連接服務器,登錄相應賬戶:su oracle
2、切換到日志路徑下:cd /oradata/fast_recovery_area/WCSDB/WCSDB/archivelog/
3、查詢本路徑下所有文件夾或文件:ls
4、切換到對應文件夾下:cd 2020_05_11
其他:查詢本路徑下所有文件信息(創建時間、大小、名稱)大小:ls -lh
二、打開日志分析
1、通過plsql連接數據庫,新建命令窗口。
2、執行命令腳本:
1.使用腳本創建相關的包(本操作只能執行一次,不用多次執行)
@$ORACLE_HOME/rdbms/admin/dbmslm.sql
@$ORACLE_HOME/rdbms/admin/dbmslmd.sql;
第一個腳本用來創建DBMS_LOGMNR包,該包用來分析日志文件。
第二個腳本用來創建DBMS_LOGMNR_D包,該包用來創建數據字典文件。
2.指定要分析的日志文件
exec sys.dbms_logmnr.add_logfile(logfilename => '/oradata/fast_recovery_area/WCSDB/WCSDB/archivelog/2020_05_07/o1_mf_1_5186_hc6rnjlj_.arc',options => dbms_logmnr.new);
3.使用本地的在線數據字典分析歸檔日志
exec sys.dbms_logmnr.start_logmnr(options => sys.dbms_logmnr.dict_from_online_catalog);
4,查詢分析出來的歸檔日志內容,例如統計最大修改量的Schema
select seg_owner,count(*) from v$logmnr_contents group by seg_owner;
select count(1),substr(sql_redo,1,30) from v$logmnr_contents group by substr(sql_redo,1,30) order by count(1) desc ;
5.查詢日志詳細
SELECT sql_redo, sql_undo from v$logmnr_contents;
6.增加別的日志文件
exec sys.dbms_logmnr.add_logfile(logfilename => '/oradata/fast_recovery_area/WCSDB/WCSDB/archivelog/2020_05_07/o1_mf_1_5090_hc5qss4q_.arc',options => dbms_logmnr.addfile);
exec sys.dbms_logmnr.start_logmnr(options => sys.dbms_logmnr.dict_from_online_catalog);
7.結束分析歸檔日志
exec sys.dbms_logmnr.end_logmnr;