Oracle數(shù)據(jù)庫(kù)共享內(nèi)存分配不足問(wèn)題的解決
作者:佚名
當(dāng)Oracle數(shù)據(jù)庫(kù)的共享內(nèi)存不足以滿足用戶需求或者存在一定碎片時(shí),就會(huì)造成無(wú)法分配合適的共享區(qū)的問(wèn)題。這時(shí)候我們就需要手動(dòng)調(diào)整SGA的大小了,本文主要就介紹了這些,希望能夠?qū)δ兴鶐椭?/div>
Oracle數(shù)據(jù)庫(kù)中,共享內(nèi)存分配不足時(shí),因?yàn)闆](méi)有有效的利用保留區(qū),就會(huì)造成無(wú)法分配合適的共享區(qū)的問(wèn)題。一個(gè)ORACLE例程的系統(tǒng)全局區(qū)域(SGA)包含幾個(gè)內(nèi)存區(qū)域(包括緩沖高速緩存、共享池、Java 池、大型池和重做日志緩沖)SGA=db_cache+shared_pool+java_pool+large_pool,接下來(lái)我們就來(lái)介紹處理方法。
處理方法:
手動(dòng)調(diào)整SGA的大小,然后重新分配四大內(nèi)存區(qū)域的大小。主要增加共享內(nèi)存和緩沖高速緩存。
- sql> show sga; //查看SGA的具體大小信息。
- sql>show parameter sga_max_size //查看SGA最大值
- sql> show parameter shared_pool //查看共享內(nèi)存
- sql>show parameter db_cache //查看數(shù)據(jù)緩存
- sql>show parameter java_pool
- sql>show parameter large_pool
如下為450個(gè)線程的分配方案;
- sql> alter system set sga_max_size = 500M scope=spfile;//修改SGA最大值
- sql> alter system set shared_pool_size =240M scope=spfile; //修改共享內(nèi)存
- sql> alter system set db_cache_size =72M scope=spfile; //修改數(shù)據(jù)緩存
- sql> alter system set java_pool_size =144M scope=spfile;
- sql> alter system set large_pool_size =24M scope=spfile;
系統(tǒng)默認(rèn)150個(gè)線程的分配情況:
SGA(164M)=db_cache(24M)+shared_pool(80M)+java_pool(48M)+large_pool(8M)
關(guān)于Oracle數(shù)據(jù)庫(kù)共享內(nèi)存分配問(wèn)題的知識(shí)就介紹到這里了,希望本次的介紹能夠給您帶來(lái)一些收獲!
【編輯推薦】
責(zé)任編輯:趙鵬
來(lái)源:
火魔網(wǎng)


相關(guān)推薦




