oracle查看sga大小 如何查看oracle SGA各組件大小,以及調(diào)整db?
如何查看oracle SGA各組件大小,以及調(diào)整db?您可以在10g緩存大小之前設(shè)置DB來指定緩存大小。SGA可以從10g_u2;Target(當(dāng)然,您不能使用它,但建議使用它)來設(shè)置整個共享內(nèi)存區(qū)域
如何查看oracle SGA各組件大小,以及調(diào)整db?
您可以在10g緩存大小之前設(shè)置DB來指定緩存大小。SGA可以從10g_u2;Target(當(dāng)然,您不能使用它,但建議使用它)來設(shè)置整個共享內(nèi)存區(qū)域的大小,包括緩存和共享池。
您不需要單獨(dú)設(shè)置DB cache11g,您可以設(shè)置memory Target,不僅包括SGA,還包括PGA,它是給Oracle的所有內(nèi)存的總和,更方便。如果使用SGAuutarget或memoryuutarget,并且同時(shí)設(shè)置了DBcacheusize,則設(shè)置的DBcacheuusize將成為緩存的最小值。需要為數(shù)據(jù)庫分配多少內(nèi)存取決于您的業(yè)務(wù)需要。您可以使用DB cache advisor的視圖來估計(jì)是否需要更大的緩存。
oraclesga正確的設(shè)置大小?
在正常情況下,查詢速度非常慢。
1. 檢查SGA的大小,以DBA的身份連接到Oracle數(shù)據(jù)庫,然后輸入showsga。
2. 如果SGA太小,請修改它的大小。修改SGA時(shí)必須遵循以下原則:1)Target不能大于SGA max Size,可以設(shè)置為等于。2) 所占用的內(nèi)存總量。SGA加上PGA等其他進(jìn)程必須小于操作系統(tǒng)的物理內(nèi)存。在執(zhí)行以下操作之前,必須備份DBS目錄中的所有文件。方法一:直接修改SQL命令行:(如果SPFILE不存在,則從pfile創(chuàng)建SPFILE)SQL>alter system設(shè)置SGAmaxusize=1024m scope=SPFILE,然后重啟數(shù)據(jù)庫SQL>shutdown immediate SQL>startupsql>show SGA,查看SGA的大小是否被修改。重新啟動后,修改SGAutargetsql>alter system set SGAutarget=1024m scope=both
在默認(rèn)安裝中,Oracle的內(nèi)存分配是基于系統(tǒng)內(nèi)存大小的比例。當(dāng)內(nèi)存比較大時(shí),Oracle占用的內(nèi)存也比較大。在這種情況下,我們通常需要修改SGA值來減少Oracle中內(nèi)存過多的問題。輸入Oracle作為DBA,作者在PLSQL中管理數(shù)據(jù)庫:Show parameter SGA--Show memory allocation alter system set SGAmaxusize=200m scope=SPFILE--修改占用內(nèi)存大小注意:在PL/SQL中,在命令窗口的編輯器模式下使用上述命令
SGAmaxusize需要重新啟動數(shù)據(jù)庫進(jìn)行調(diào)整,數(shù)據(jù)庫緩存大小等可以動態(tài)調(diào)整。在調(diào)整共享池時(shí),需要計(jì)算SGA的總?cè)萘?。如果超過SGAmaxSize,則會出現(xiàn)錯誤。