在進(jìn)行系統(tǒng)優(yōu)化時(shí),經(jīng)常會(huì)遇到MMNL TRC文件巨大的問(wèn)題。通過(guò)執(zhí)行以下命令可以快速知道問(wèn)題:
du -sm * | sort -rn | head
發(fā)現(xiàn)mmnl的trc文件50G,詳情如下圖所示:
原因分析
MMNL后臺(tái)進(jìn)程負(fù)責(zé)對(duì)活動(dòng)會(huì)話歷史記錄(ASH)
進(jìn)行采樣,存儲(chǔ)在循環(huán) SGA 內(nèi)存緩沖區(qū)中的信息將通過(guò)快照或緊急刷新刷新到 AWR。
如果循環(huán)緩沖區(qū)已滿(mǎn)三分之二,則 ASH 緊急沖洗將啟動(dòng)。
如果由于某種原因無(wú)法將信息寫(xiě)入 AWR,則 ASH 會(huì)將其內(nèi)容(如果未重新啟動(dòng),則每 12 小時(shí)轉(zhuǎn)儲(chǔ)一次)到 MMNL 跟蹤文件。
將信息寫(xiě)入跟蹤而不是 AWR 的可能原因包括:
ASH緩沖區(qū)太小<===首先檢查ASH緩沖區(qū)是否太小
MMON進(jìn)程沒(méi)有響應(yīng)<====然后,檢查MMON進(jìn)程沒(méi)有響應(yīng)的原因
是否緩沖區(qū)太?。?/h3>select round(total_size/1024/1024) total_size_mb, AWR_FLUSH_EMERGENCY_COUNT from v$ash_info;
如果size較小,且count較多,說(shuō)明需要調(diào)大
調(diào)大
sqlplus / as sysdba alter system set "_ash_size"=25165824; alter system set "_ash_size"=400m; --12c 可以超過(guò) 254Mb
確認(rèn)
select total_size from v$ash_info;
現(xiàn)有的trc怎么辦?
mmnl重啟
在Oracle數(shù)據(jù)庫(kù)中,MMNL(Manageability Monitor Lite)進(jìn)程是用于捕捉性能統(tǒng)計(jì)信息的后臺(tái)進(jìn)程它與MMON(Manageability Monitor)進(jìn)程共同工作,處理各種管理任務(wù),如AWR(AutomaticWorkload Repository)數(shù)據(jù)收集等。通常,這些進(jìn)程都是出Oracle數(shù)據(jù)庫(kù)自動(dòng)管理的,不需要手動(dòng)干預(yù)。
如果出于某種原因需要重啟MMNL進(jìn)程(這是非常罕見(jiàn)的),那么最直接的方法是重啟數(shù)據(jù)庫(kù)。這是因?yàn)镸MNL是一個(gè)Oracle數(shù)據(jù)庫(kù)的內(nèi)部進(jìn)程,沒(méi)有提供直接的方法來(lái)只重啟該進(jìn)程而不影響其他數(shù)據(jù)庫(kù)服務(wù)。請(qǐng)注意,重啟數(shù)據(jù)庫(kù)會(huì)影響所有當(dāng)前的數(shù)據(jù)庫(kù)連接和業(yè)務(wù)操作,因此應(yīng)小心謹(jǐn)慎地進(jìn)行,并在維護(hù)窗口內(nèi)執(zhí)行。
作為一種解決方法,請(qǐng)通過(guò)以下方法重新啟動(dòng)MMON進(jìn)程:
重新啟動(dòng)數(shù)據(jù)庫(kù)實(shí)例
將實(shí)例設(shè)置為“受限會(huì)話”模式,然后使用以下命令作為SYSDBA將其恢復(fù)到正常模式:
alter system enable restricted session; alter system disable restricted session;
后臺(tái)日志
其他解決方案
解決MMNL TRC文件巨大問(wèn)題的方法
在進(jìn)行系統(tǒng)優(yōu)化時(shí),經(jīng)常會(huì)面臨MMNL TRC文件巨大的問(wèn)題。通過(guò)執(zhí)行以下命令可以快速定位問(wèn)題:
du -sm * | sort -rn | head
如果發(fā)現(xiàn)MMNL的TRC文件占據(jù)了大量空間,可能需要查看其內(nèi)容,尋找解決方法。
原因分析
一個(gè)可能的原因是系統(tǒng)緩沖區(qū)設(shè)置過(guò)小。您可以通過(guò)以下SQL語(yǔ)句檢查并調(diào)整ASH參數(shù):
select round(total_size/1024/1024) total_size_mb, AWR_FLUSH_EMERGENCY_COUNT from v$ash_info;
如果`total_size`較小而`AWR_FLUSH_EMERGENCY_COUNT`較多,說(shuō)明需要增加緩沖區(qū)大小。您可以通過(guò)以下步驟進(jìn)行調(diào)整:
1. 進(jìn)入SQLPlus:
sqlplus / as sysdba
2. 調(diào)整系統(tǒng)參數(shù):
alter system set "_ash_size"=25165824; alter system set "_ash_size"=400m; -- 對(duì)于12c版本,允許超過(guò)254Mb
3. 確認(rèn)更改是否生效:
select total_size from v$ash_info;
現(xiàn)有TRC文件處理
若需處理當(dāng)前存在的大型TRC文件,可以嘗試重啟MMNL服務(wù)。文章來(lái)源:http://www.zghlxwxcb.cn/article/731.html
關(guān)鍵詞: MMNL TRC文件、TRC文件過(guò)大、AWR_FLUSH_EMERGENCY_COUNT、ASH參數(shù)調(diào)整、后臺(tái)日志分析文章來(lái)源地址http://www.zghlxwxcb.cn/article/731.html
到此這篇關(guān)于如何處理大小巨大的MMNL TRC文件?解決方法一覽的文章就介紹到這了,更多相關(guān)內(nèi)容可以在右上角搜索或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!