自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

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

數(shù)據(jù)庫 Oracle
首先請DBA團(tuán)隊分析oracle數(shù)據(jù)庫的日志,經(jīng)DBA分析得知數(shù)據(jù)庫有兩個控制數(shù)據(jù)庫資源的進(jìn)程在20:06時hang了大概幾十秒,oracle出于數(shù)據(jù)保護(hù)的機(jī)制便重啟了數(shù)據(jù)庫。然后從操作系統(tǒng)層面分析在20:06時操作系統(tǒng)的資源使用情況。

原題:Oracle數(shù)據(jù)庫重啟(內(nèi)存參數(shù)numperm_global相關(guān))

故障描述

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

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

AIX 6100-07-05-1228

Oracle 11g

故障分析

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

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

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

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

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

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

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

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

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

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

經(jīng)檢查發(fā)現(xiàn)numperm_global這個參數(shù)設(shè)置的為1,因此在oracle有大量64KB頁面申請時,64KB頁面達(dá)到maxpin%(80%),這時即使有12GB剩余的內(nèi)存,此時也只會把計算內(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ā)布了補丁IV44998。在此種情況下,建議升級操作系統(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)存頁面。 

責(zé)任編輯:龐桂玉 來源: talkwithtrend
相關(guān)推薦

2017-06-08 12:52:34

Oracle數(shù)據(jù)庫重啟解決方案

2011-03-14 13:33:32

Oracle數(shù)據(jù)庫啟動

2010-04-19 16:08:31

Oracle數(shù)據(jù)庫

2021-01-13 11:42:52

分庫分表數(shù)據(jù)庫瓶頸

2011-03-21 12:51:16

Oracle數(shù)據(jù)庫表連接

2018-01-03 08:52:27

MySQL數(shù)據(jù)庫級別

2018-09-13 14:51:43

NoSQL數(shù)據(jù)庫大數(shù)據(jù)

2010-04-22 17:36:51

Oracle數(shù)據(jù)庫

2010-04-14 17:46:10

Oracle數(shù)據(jù)庫

2010-01-12 12:15:25

SOA安全解決方案

2022-09-20 19:37:08

MySQL

2020-02-27 09:00:00

數(shù)據(jù)庫設(shè)計工具

2019-09-20 21:50:47

數(shù)據(jù)庫緩存

2017-02-28 14:28:37

數(shù)據(jù)跨庫分頁架構(gòu)

2021-10-10 22:10:47

手機(jī)開機(jī)電池

2009-12-14 15:29:48

解決方案SOA安全

2011-08-02 17:26:38

Oracle數(shù)據(jù)庫遠(yuǎn)程連接

2025-02-18 16:27:01

2021-07-05 08:09:54

@AutowiredSpringMapper

2024-05-22 19:10:18

跨域Web開發(fā)
點贊
收藏

51CTO技術(shù)棧公眾號