1.1 ?????? 現(xiàn)象描寫(xiě)敘述
數(shù)據(jù)庫(kù)節(jié)點(diǎn)響應(yīng)緩慢,部分用戶(hù)業(yè)務(wù)受到影響。
查看數(shù)據(jù)庫(kù)告警日志,開(kāi)始顯示 ORA-07445 錯(cuò)誤,然后是大量的 ORA-04031 錯(cuò)誤和 ORA-00600 錯(cuò)誤。
檢查數(shù)據(jù)庫(kù)日志,數(shù)據(jù)庫(kù)仍處于活動(dòng)狀態(tài)的信息例如以下:
Sat Jul 17 07:51:52 2010
Thread 1 advanced to log sequence 266272
? Current log# 2 seq# 266272 mem# 0: /dev/rlv_redo121
? Current log# 2 seq# 266272 mem# 1: /dev/rlv_redo122
1.2 ?????? 可能原因
因?yàn)閿?shù)據(jù)庫(kù)用戶(hù)業(yè)務(wù)繁忙,活動(dòng)會(huì)話較多,占用了大量的Shared Pool內(nèi)存。同一時(shí)候Shared Pool內(nèi)部參數(shù)配置不合理導(dǎo)致產(chǎn)生大量的內(nèi)存碎片。因此,導(dǎo)致部分進(jìn)程無(wú)法申請(qǐng)到足夠的Shared Pool內(nèi)存,出現(xiàn) ORA-07445 錯(cuò)誤和 ORA-04031 錯(cuò)誤。因?yàn)镾hared Pool壓力越來(lái)越大,最后還引發(fā) ORA-00600 錯(cuò)誤。
1.3 ?????? 處理步驟
- 以 oracle 用戶(hù)登錄數(shù)據(jù)庫(kù)主機(jī)。
- 以 sysdba 用戶(hù)連接數(shù)據(jù)庫(kù)。
% sqlplus /nolog
SQL> conn /as sysdba;
Connected.
- 提高 Shared Pool 的“ reserved pool ”比例。
SQL> alter system set "_shared_pool_reserved_pct"=10 scope=spfile;
- 減少“ reserved pool ”的最小請(qǐng)求大小。
SQL> alter system set "_shared_pool_reserved_min_alloc"=4000 scope=spfile;
- 將 Shared Pool 子池個(gè)數(shù)降低到兩個(gè)。
SQL> alter system set "_kghdsidx_count"=2 scope=spfile;
- 分別關(guān)閉主備節(jié)點(diǎn)數(shù)據(jù)庫(kù)。
SQL> shutdown immediate
- 分別在主備節(jié)點(diǎn)又一次啟動(dòng)數(shù)據(jù)庫(kù)。
SQL> startup
- 查詢(xún)?cè)O(shè)置的參數(shù)。
SQL> select a.ksppinm "Parameter", b.ksppstvl "Session Value", c.ksppstvl "Instance Value"
from x$ksppi a, x$ksppcv b, x$ksppsv c
where a.indx = b.indx and a.indx = c.indx and a.ksppinm = '_shared_pool_reserved_pct'; ?
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號(hào)聯(lián)系: 360901061
您的支持是博主寫(xiě)作最大的動(dòng)力,如果您喜歡我的文章,感覺(jué)我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對(duì)您有幫助就好】元
