超碰人人精品,中文字幕观看,天天躁日日躁狠狠躁喷水,日本不卡一区在线,一级片在线观看网站,午夜两性做爰免费视频,国产视频二区在线观看

此類情況下解決Oracle數(shù)據(jù)庫重啟的四種方案

2018-01-10 17:11:31 talkwithtrend  點(diǎn)擊量: 評(píng)論 (0)
故障描述Oracle數(shù)據(jù)庫發(fā)生重啟。系統(tǒng)環(huán)境AIX 6100-07-05-1228Oracle 11g故障分析首先請DBA團(tuán)隊(duì)分析oracle數(shù)據(jù)庫的日志,經(jīng)DBA分析得知數(shù)
故障描述

Oracle數(shù)據(jù)庫發(fā)生重啟。

系統(tǒng)環(huán)境

AIX 6100-07-05-1228

Oracle 11g

故障分析

首先請DBA團(tuán)隊(duì)分析oracle數(shù)據(jù)庫的日志,經(jīng)DBA分析得知數(shù)據(jù)庫有兩個(gè)控制數(shù)據(jù)庫資源的進(jìn)程在20:06時(shí)hang了大概幾十秒,oracle出于數(shù)據(jù)保護(hù)的機(jī)制便重啟了數(shù)據(jù)庫。

然后從操作系統(tǒng)層面分析在20:06時(shí)操作系統(tǒng)的資源使用情況。

從nmon的數(shù)據(jù)中可以得知CPU在全天使用率都很低,都低于30%,可見CPU使用情況正常。

分析內(nèi)存的數(shù)據(jù)可知全天內(nèi)存使用率并不高,基本穩(wěn)定在80%以內(nèi),在20:06之前的一段時(shí)間,有計(jì)算內(nèi)存增長情況,這和當(dāng)時(shí)處理的業(yè)務(wù)相關(guān)。(注:nmon采樣點(diǎn)是6分鐘采一個(gè)點(diǎn)并取平均值)

再分析內(nèi)存的換頁,從圖可以見看到,在20:06時(shí)產(chǎn)生了大量的換頁,當(dāng)瞬間產(chǎn)生大量換頁時(shí)說明有應(yīng)用程序在短時(shí)間內(nèi)申請了大量的內(nèi)存,同時(shí)內(nèi)存不足并啟動(dòng)lrud進(jìn)程進(jìn)行換頁,換頁帶來的問題就是會(huì)影響系統(tǒng)的性能。

由于nmon采樣的顆粒度比較粗,而oswatcher監(jiān)控的采樣間隔是20秒,因此分析oswatcher的數(shù)據(jù),主要分析vmstat的輸出,從vmstat的輸出可以看到當(dāng)時(shí)free還有3103118個(gè)內(nèi)存頁面(每個(gè)頁面4KB),即12GB內(nèi)存,而此時(shí)有746個(gè)pi和16989個(gè)po。因此可見在內(nèi)存有剩余的情況下產(chǎn)生了換頁。

下面分析在內(nèi)存有剩余的情況下產(chǎn)生換頁的原因,AIX的內(nèi)存管理機(jī)制是把內(nèi)存分為多個(gè)內(nèi)存池(memory pool),這個(gè)系統(tǒng)有90GB內(nèi)存,120個(gè)邏輯CPU。AIX會(huì)按8個(gè)邏輯CPU分一個(gè)內(nèi)存池的劃分機(jī)制,把內(nèi)池劃分為多個(gè)內(nèi)存池。即這個(gè)系統(tǒng)它的內(nèi)存池有15個(gè):

為了優(yōu)化內(nèi)存的管理,在AIX 6.1時(shí)引入了numperm_global參數(shù),這個(gè)參數(shù)設(shè)置為0時(shí)代表在換頁時(shí)以內(nèi)存池為單位去判斷是否把計(jì)算內(nèi)存換出,這個(gè)參數(shù)設(shè)置為1時(shí)代表在換頁時(shí)以全局為單位去判讀是否把計(jì)算內(nèi)存換出。

在AIX特定版本下(6100-06-sp7 / 6100-06-sp8 / 6100-06-sp9 / 6100-07-sp4 / 6100-07-sp5)numperm_global這個(gè)參數(shù)設(shè)置為1會(huì)觸發(fā)操作系統(tǒng)的bug,即當(dāng)系統(tǒng)的PIN住的64KB頁面達(dá)到maxpin%(80%)時(shí),換頁程序在換取4KB頁面時(shí),即使有文件系統(tǒng)緩存剩余(大于minperm,缺省為物理內(nèi)存的3%)的情況下,也只換取計(jì)算內(nèi)存頁面,而計(jì)算內(nèi)存頁面被換出會(huì)對性能有很大的影響并有可能導(dǎo)致應(yīng)用程序緩慢或者數(shù)據(jù)庫掛起。

一般來說,大量PIN 64KB內(nèi)存頁面應(yīng)用程序并不多,但是Oracle數(shù)據(jù)庫出于提高性能的原因,一般都會(huì)將SGA和PGA PIN在內(nèi)存里。如果SGA和PGA加起來接近maxpin%,那么在numperm_global設(shè)置為1的時(shí)候就有很大的可能觸發(fā)上面提到的bug,導(dǎo)致early paging問題。

經(jīng)檢查發(fā)現(xiàn)numperm_global這個(gè)參數(shù)設(shè)置的為1,因此在oracle有大量64KB頁面申請時(shí),64KB頁面達(dá)到maxpin%(80%),這時(shí)即使有12GB剩余的內(nèi)存,此時(shí)也只會(huì)把計(jì)算內(nèi)存換出去,這樣導(dǎo)致系統(tǒng)在20:06左右操作系統(tǒng)出現(xiàn)性能問題。

故障建議

基于上面分析,建議如下:

方案1:作為規(guī)避方案,把numperm_global修改為0,并重啟生效。

方案2:為了徹底解決early paging的問題,IBM在AIX 6.1 TL09 SP01版本中發(fā)布了補(bǔ)丁IV44998。在此種情況下,建議升級(jí)操作系統(tǒng)并啟用numperm_global參數(shù)來達(dá)到優(yōu)化內(nèi)存的分配機(jī)制的目的。

方案3:將Oracle SGA使用的內(nèi)存指定為16MB頁面,從而避免大量的64KB 頁面被PIN。

方案4:將Oracle的LOCK_SGA參數(shù)改為FALSE,使其不PIN內(nèi)存頁面。

大云網(wǎng)官方微信售電那點(diǎn)事兒

責(zé)任編輯:售電衡衡

免責(zé)聲明:本文僅代表作者個(gè)人觀點(diǎn),與本站無關(guān)。其原創(chuàng)性以及文中陳述文字和內(nèi)容未經(jīng)本站證實(shí),對本文以及其中全部或者部分內(nèi)容、文字的真實(shí)性、完整性、及時(shí)性本站不作任何保證或承諾,請讀者僅作參考,并請自行核實(shí)相關(guān)內(nèi)容。
我要收藏
個(gè)贊
?