亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

內(nèi)存結(jié)構(gòu)—SGA

系統(tǒng) 2032 0

Oracle的內(nèi)存結(jié)構(gòu)包括SGA系統(tǒng)全局區(qū),PGA程序全局區(qū)和軟件代碼區(qū)

1.SGA

?? 所有的用戶進程,服務(wù)器進程都可以共同使用SGA區(qū),這是不同用戶進程與服務(wù)器進程進行通信的中心。

?? SGA分為如下幾個部分:

?? 1)數(shù)據(jù)高速緩存

?????? A)用于保存的是最近從數(shù)據(jù)文件中讀取的數(shù)據(jù)塊,或存儲最近經(jīng)常使用的數(shù)據(jù),其中的數(shù)據(jù)可以被所有用戶共享。

?????? B)該部分的大小由初始化參數(shù)DB_CACHE_SIZE指定,一般是數(shù)據(jù)庫大小的1%

?????? C)該部分又由3個較小的緩存池組成,每一個緩存池用來存儲不同訪問特性的數(shù)據(jù),以便提高效率。用戶還可以

?????????? 為特定的對象(如創(chuàng)建,更改表或索引時)使用storage子句中指定BUFFER_POOL參數(shù)來設(shè)置該對象使用

?????????? 緩存池。

?????????? a)keep 保持緩存池:其中的數(shù)據(jù)(即緩存塊)將長期保存,直到數(shù)據(jù)庫關(guān)閉。適用于想在內(nèi)存中長期保存并

?????????????????????? 頻繁訪問的對象,如代碼表。

?????????? b)recycle回收緩存池:其中的數(shù)據(jù)一旦使用完畢就會被換出。

?????????? c)default默認緩存池:對象默認使用該緩存池。oracle使用LRU最近最少使用算法來換出。

?????????? 注意:keep,和recycle的大小由初始化參數(shù)BUFFER_POOL_KEEP和BUFFER_POOL_RECYCLE來指定

??????????????????? 參數(shù)DB_CACHE_SIZE減去這兩個參數(shù)的值后余下的就是default的大小

???????D)數(shù)據(jù)高速緩存由許多大小相等的緩存塊組成。大小與OS塊相同。可分為3類

????????? a)dirty buffers臟緩存塊:當(dāng)一個SQL語句對某個緩存塊中的數(shù)據(jù)進行修改后,這個緩存塊就被標記為臟緩存塊,

?????????????????該塊的數(shù)據(jù)將來會被持久化到數(shù)據(jù)文件。

??????????b)free buffers空閑緩存塊:這些塊中沒有數(shù)據(jù),它們在等待被寫入數(shù)據(jù)。

????????? c)pinned buffers命中緩存塊:保存的是最近正在被訪問的數(shù)據(jù)。這些數(shù)據(jù)將始終被保存在內(nèi)存中。

???????E)Oracle通過如下2個列表管理上訴緩存塊:

????????? a)dirty列表:保存已經(jīng)被修改但還沒有被寫入數(shù)據(jù)文件的臟緩存塊

????????? b)LRU列表:保存命中,空閑以及還沒被移入dirty列表中的臟緩存塊。LRU列表可以被看成為一個隊列。

?????????????????? 被經(jīng)常訪問的在隊頭,放在隊尾的將最先被移除。

??????????????? 內(nèi)存結(jié)構(gòu)—SGA ?????

?

2.重做日志高速緩存

?? 用于記錄insert,update,delete語句及create,alter,drop等語句的重做記錄。由參數(shù)log_buffer制定。

3.共享池

???????保存了最近執(zhí)行的SQL語句,PL/SQL過程與包,數(shù)據(jù)字典信息,鎖,以及其他控制結(jié)構(gòu)信息。它是對SQL,

?? PL/SQL進行語法解析,編譯,執(zhí)行的內(nèi)存區(qū),主要由數(shù)據(jù)字典緩存區(qū)和庫緩存區(qū)組成。由shared_pool_size指定。

?? 1)數(shù)據(jù)字典緩存(dictionary cache)

?????? A)用于存儲最近經(jīng)常使用的數(shù)據(jù)字典信息,如表定義,列定義,用戶名,口令,權(quán)限,數(shù)據(jù)庫的結(jié)構(gòu)等信息。

?????? B)Oracle運行時需訪問數(shù)據(jù)字典來解析SQL,確定對象是否存在,驗證權(quán)限。如果數(shù)據(jù)在緩存中不存在,

????????? 則取讀取數(shù)據(jù)字典的數(shù)據(jù)文件。

?????? C)數(shù)據(jù)字典緩存中存儲的是一條一條的記錄,而其他緩存區(qū)保存的是數(shù)據(jù)塊

?? 2)庫緩存

????????用于保存最近解析過的SQL語句PL/SQL

??????? Oralce將每條SQL分解為可共享和不可共享的部分,分別存儲在共享SQL區(qū)和私有SQL區(qū)

??????? A)共享SQL區(qū):存儲的是最近執(zhí)行的SQL語句,解析后的語法樹和優(yōu)化后的執(zhí)行計劃

??????? B)私有SQL區(qū):存儲與會話和用戶相關(guān)的私有信息,如:綁定變量,環(huán)境,和會話參數(shù)。

??????? C)PL/SQL過程和包區(qū):存儲PL/SQL解析的執(zhí)行代碼。PL/SQL中的SQL還是存儲在共享SQL區(qū)中

??????? D)鎖與其他控制結(jié)構(gòu)區(qū):存儲Oracle實例內(nèi)部操作所需要的信息,如各種鎖,閂,寄存器值等。后臺進程需要

?????????????? 訪問他們。

4.大池(可選)

?? 大池用于為需要大內(nèi)存的操作提供相對獨立的內(nèi)存空間,以便提高這些操作的性能。通過large_pool_size確定大小

?? 需要大量內(nèi)存的操作包括:

?? 1)數(shù)據(jù)庫備份和恢復(fù),如使用RMAN在磁帶設(shè)備上執(zhí)行備份,轉(zhuǎn)儲,恢復(fù)等操作。

?? 2)具有大量排序操作的SQL語句。

?? 3)并行化的數(shù)據(jù)庫操作。

?? 注意:如果沒有在SGA區(qū)中創(chuàng)建大池,上訴操作所需的內(nèi)存空間將占據(jù)共享池的內(nèi)存

5.Java池(可選)

?? 在Oracle 8i之后,Oracle增加了對Java語言的支持,提供了Java池,用于存放Java代碼,Java語句的語法分析表

?? Java語句的執(zhí)行方案和進行Java程序開發(fā)。使用java_pool_size確定大小

內(nèi)存結(jié)構(gòu)—SGA


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久操视频免费观看 | 人人干视频在线观看 | 日本天天操 | www.伦理| 久久久在线视频 | 四虎澳门永久8848在线影院 | 亚洲毛片一级带毛片基地 | 夜夜爽www| 国产日韩精品一区二区在线观看 | 亚洲99久久久久综合 | 国产精品亚洲片在线观看麻豆 | 香蕉亚洲欧洲在线一区 | 免费超爽大片黄网站 | 亚洲国产一区二区三区 | 一级毛片免费的 | 免费亚洲视频在线观看 | 天天色天天射天天操 | 五月综合在线 | 欧美jizzhd精品欧美4k | 久久久高清日本道免费观看 | 成人免费视频一区二区三区 | 视频播放在线观看精品视频 | 亚洲综合极品香蕉久久网 | 色桃花网 | 国产精品亚洲欧美日韩一区在线 | 亚洲综合色吧 | 亚洲国产天堂久久综合 | 狠狠2020| 人人爽天天爽 | 国产欧美精品一区二区色综合 | 久久精品成人国产午夜 | 欧美性生交xxxxx久久久 | 日本免费的一级绿象 | 日韩欧美国产成人 | 久久国产欧美日韩高清专区 | 韩国精品一区二区久久 | 国产精品福利视频一区二区三区 | 玖玖精品在线视频 | 伊人影院在线观看视频 | 久色精品 | 天天爽夜夜爽免费看 |