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

Oracle內(nèi)存結(jié)構(gòu)的相關(guān)篇SGA

數(shù)據(jù)庫(kù) Oracle
Oracle內(nèi)存結(jié)構(gòu)研究中,SGA作為共享內(nèi)存區(qū),它是由N種部分組成的,以下就是文章的相關(guān)詳細(xì)內(nèi)容的介紹,望你會(huì)有會(huì)有所體會(huì)。

以下的文章主要介紹的是Oracle內(nèi)存結(jié)構(gòu)的相關(guān)研究-SGA篇,前兩天我在《Oracle內(nèi)存結(jié)構(gòu)研究-PGA篇》中看到有關(guān)于PGA的介紹。PGA作為一個(gè)服務(wù)器進(jìn)程的專用的私有內(nèi)存區(qū),而SGA則是共享內(nèi)存區(qū)。

在《Oracle內(nèi)存結(jié)構(gòu)研究-PGA篇》一文中提到,PGA是一個(gè)服務(wù)器進(jìn)程的專用的私有內(nèi)存區(qū),而SGA則是共享內(nèi)存區(qū)。

SGA由多個(gè)部分組成:

1, 固定SGA(Fixed SGA)

 

2, 塊緩沖區(qū)(Db cache)

 

3, 重做日志緩沖區(qū)(Redo log buffer)

 

4, Java池(Java pool)

 

5, 大池(Large pool)

 

6, 共享池(Shared pool)

 

7, 流池(Stream pool)

 

有如下參數(shù)控制共享池相關(guān)組件大小:

1, JAVA_POOL_SIZE:控制Java池大小。

 

2, SHARED_POOL_SIZE:9i中控制共享池中占用***的部分,10g以上控制共享池大小。

 

3, LARGE_POOL_SIZE:控制大池大小。

 

4, DB_*K_CACHE_SIZE:控制不同塊大小的緩沖區(qū)大小。

 

5, LOG_BUFFER:控制重做日志緩沖區(qū)大小。

 

6, SGA_TARGET:10g以上控制自動(dòng)SGA內(nèi)存管理的總內(nèi)存大小。

 

7, SGA_MAX_SIZE:控制SGA可以達(dá)到的***大小,改變需重啟數(shù)據(jù)庫(kù)。

 

下面將詳細(xì)介紹在Oracle內(nèi)存結(jié)構(gòu)研究-SGA篇 中各個(gè)部分的作用和推薦設(shè)置。

 二、SGA各組件作用

1, 固定SGA:

 

顧名思義,是一段不變的內(nèi)存區(qū),指向SGA中其他部分,Oracle通過(guò)它找到SGA中的其他區(qū),可以簡(jiǎn)單理解為用于管理的一段內(nèi)存區(qū)。

 

2, 塊緩沖區(qū):

查詢時(shí),Oracle會(huì)先把從磁盤讀取的數(shù)據(jù)放入內(nèi)存,以后再查詢相關(guān)數(shù)據(jù)時(shí)不用再次讀取磁盤。插入和更新時(shí),Oracle會(huì)現(xiàn)在該區(qū)中緩存數(shù)據(jù),之后批量寫到硬盤中。通過(guò)塊緩沖區(qū),Oracle可以通過(guò)內(nèi)存緩存提高磁盤的I/O性能。

 

塊緩沖區(qū)中有三個(gè)區(qū)域:

 

默認(rèn)池(Default pool):所有數(shù)據(jù)默認(rèn)都在這里緩存。

 

保持池(Keep pool):用來(lái)緩存需要多次重用的數(shù)據(jù)。

 

回收池(Recycle pool):用來(lái)緩存很少重用的數(shù)據(jù)。

 

原來(lái)只有一個(gè)默認(rèn)池,所有數(shù)據(jù)都在這里緩存。這樣會(huì)產(chǎn)生一個(gè)問(wèn)題:大量很少重用的數(shù)據(jù)會(huì)把需重用的數(shù)據(jù)“擠出”緩沖區(qū),造成磁盤I/O增加,運(yùn)行速度下降。后來(lái)分出了保持池和回收池根據(jù)是否經(jīng)常重用來(lái)分別緩存數(shù)據(jù)。

 

這三部分內(nèi)存區(qū)需要手動(dòng)確定大小,并且之間沒有共享。例如:保持池中已經(jīng)滿了,而回收池中還有大量空閑內(nèi)存,這時(shí)回收池的內(nèi)存不會(huì)分配給保持池。

 

9i開始,還可以設(shè)置db_nk_cache。9i之前數(shù)據(jù)庫(kù)只能使用相同的塊大小。9i開始同一個(gè)數(shù)據(jù)庫(kù)可以使用多種塊大?。?KB,4KB,8KB,16KB,32KB),這些塊需要在各自的db_nk_cache中緩存。如果為不同的表空間指定了不同的塊大小,需要為其設(shè)置各自的緩沖區(qū)。

 

3, 重做日志緩沖區(qū)(Redo log buffer):

數(shù)據(jù)寫到重做日志文件之前在這里緩存,在以下情況中觸發(fā):

 

每隔3秒

 

緩存達(dá)到1MB或1/3滿時(shí)

 

用戶提交時(shí)

 

緩沖區(qū)的數(shù)據(jù)寫入磁盤前

 

上述的相關(guān)內(nèi)容就是對(duì)Oracle內(nèi)存結(jié)構(gòu)研究-SGA篇的描述,希望會(huì)給你帶來(lái)一些幫助在此方面。

【編輯推薦】

  1. Oracle數(shù)據(jù)庫(kù)中表的2種連接方式
  2. Oracle表列的修改的流程
  3. Oracle位圖索引相關(guān)特點(diǎn)介紹
  4. Oracle索引如何提高數(shù)據(jù)庫(kù)的查詢效率
  5. Oracle 11g 閃回?cái)?shù)據(jù)歸檔簡(jiǎn)介
責(zé)任編輯:佚名 來(lái)源: 博客園
相關(guān)推薦

2010-10-28 14:29:39

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

2010-04-02 16:53:34

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

2010-04-12 15:40:48

Oracle SGA

2010-04-12 16:03:12

Oracle SGA設(shè)

2009-02-01 10:45:18

Oracle數(shù)據(jù)庫(kù)性能調(diào)整

2009-10-23 16:03:40

Oracle 10g系內(nèi)存管理

2010-04-09 15:15:01

Oracle SGA

2011-08-23 14:47:29

Oracle 10g內(nèi)共享池

2018-10-12 11:11:39

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

2011-08-23 15:04:41

Oracle 10g內(nèi)程序全局區(qū)排序區(qū)

2011-07-29 15:58:53

SGAOracle

2010-04-13 15:49:02

Oracle SGA

2010-03-31 10:40:11

Oracle事例

2010-03-31 14:20:23

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

2010-03-31 10:30:03

Oracle 10g

2010-04-08 10:02:15

Oracle體系結(jié)構(gòu)

2010-04-19 10:23:05

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

2015-10-28 15:35:33

Oracle策略

2009-11-20 11:02:28

2010-04-14 11:35:57

Oracle內(nèi)存結(jié)構(gòu)
點(diǎn)贊
收藏

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