Oracle數(shù)據(jù)庫使用logminer查看歸檔日志
Oracle數(shù)據(jù)庫出現(xiàn)故障,分析后得知是數(shù)據(jù)庫頻繁出現(xiàn)歸檔日志空間不夠,導(dǎo)致數(shù)據(jù)庫無法登陸的故障。一查發(fā)現(xiàn)原因是歸檔日志切換頻繁,操作系統(tǒng)空間不夠。
確定原因:
- [aix01@oracle]/oracle>df -g
- Filesystem GB blocks Free %Used Iused %Iused Mounted on
- /dev/hd4 0.50 0.28 44% 13674 17% /
- /dev/hd2 3.00 0.67 78% 49208 23% /usr
- /dev/hd9var 1.00 0.37 63% 9285 10% /var
- /dev/hd3 2.00 1.03 49% 2407 1% /tmp
- /dev/fwdump 1.00 0.99 2% 30 1% /var/adm/ras/platform
- /dev/hd1 0.25 0.18 28% 465 2% /home
- /dev/hd11admin 0.25 0.25 1% 5 1% /admin
- /proc - - - - - /proc
- /dev/hd10opt 0.50 0.28 44% 10241 14% /opt
- /dev/livedump 0.25 0.25 1% 12 1% /var/adm/ras/livedump
- /dev/oraclelv 30.00 11.29 63% 161681 6% /oracle
- /dev/installlv 15.00 3.38 78% 6478 1% /install
- /dev/crslv 10.00 3.35 67% 7807 1% /crs
- /dev/wmsapplv 30.00 17.49 42% 15537 1% /wmprod
- /dev/archivelv 29.25 29.25 1% 4 1% /arch1
- /dev/backuplv 400.00 107.13 74% 306 1% /sysbackup
- aix02:arch2 30.25 0.64 99% 3 1% /arch2
可以看到,/arch2里文件系統(tǒng)空間已經(jīng)達到99%,/arch2是用來存放歸檔日志的文件系統(tǒng),進而導(dǎo)致數(shù)據(jù)庫出錯。
提出問題:
這下問題來了,/arch2的空間是30G,每天備份腳本都會自動rman備份歸檔日志,并自動清除歸檔日志文件,按照正常情況下,數(shù)據(jù)庫不可能一天產(chǎn)生這么大的歸檔日志量。
如何查詢歸檔日志都是由什么應(yīng)用產(chǎn)生的,這就是logminer的用途。
使用方法:
-- 1.指定要分析的日志文件
exec sys.dbms_logmnr.add_logfile(logfilename => '/arch2/2_825_733092736.dbf',options => dbms_logmnr.new);
-- 2.使用本地的在線數(shù)據(jù)字典分析歸檔日志
exec sys.dbms_logmnr.start_logmnr(options => sys.dbms_logmnr.dict_from_online_catalog);
-- 3.查詢分析出來的歸檔日志內(nèi)容,例如統(tǒng)計最大修改量的Schema
select seg_owner,count(*) from v$logmnr_contents group by seg_owner;
-- 4.增加別的日志文件
exec sys.dbms_logmnr.add_logfile(logfilename=>'/arch2/2_825_733092736.dbf');
-- 5.結(jié)束分析歸檔日志
exec sys.dbms_logmnr.end_logmnr;
結(jié)論:
從上面查詢結(jié)果可以看出操作量最大的用戶是WAS用戶,再具體看下v$logmnr_contents可以發(fā)現(xiàn)基本修改的內(nèi)容是一致的。
與開發(fā)人員溝通后,最終確認是一個執(zhí)行update過程存在問題,where條件未正確定位到記錄,每執(zhí)行一次都會導(dǎo)致大規(guī)模的修改數(shù)據(jù)。
關(guān)于Oracle數(shù)據(jù)庫使用logminer查看歸檔日志的方法就介紹到這里了,希望能夠給您帶來一些收獲,謝謝!
【編輯推薦】
- Oracle數(shù)據(jù)庫如何定期正確刪除archivelog文件
- 用一些不常見的SQL語句實現(xiàn)讓人意想不到的功能
- Oracle數(shù)據(jù)庫基于用戶管理的控制文件的備份與恢復(fù)
- 圖解Rational Rose結(jié)合SQL Server 2000建立數(shù)據(jù)庫表
- 詳解Oracle數(shù)據(jù)貨場中三種優(yōu)化:分區(qū)、維度和物化視圖






