波多在线播放_激情深爱五月_久久欧美精品_成人超碰_国产久_www.pixiv.moe

Rss & SiteMap

曙海教育集團(tuán)論壇 http://www.bjzhda.cn

曙海教育集團(tuán)論壇
共1 條記錄, 每頁(yè)顯示 10 條, 頁(yè)簽: [1]
[瀏覽完整版]

標(biāo)題:Oracle Tuning的一些總結(jié)

1樓
wangxinxin 發(fā)表于:2010-12-11 11:13:01
關(guān)于Oracle的性能調(diào)整,一般包括兩個(gè)方面,一是指Oracle數(shù)據(jù)庫(kù)本身的調(diào)整,比如SGA、PGA的優(yōu)化設(shè)置,二是連接Oracle的應(yīng)用程序以及SQL語(yǔ)句的優(yōu)化。做好這兩個(gè)方面的優(yōu)化,就可以使一套完整的Oracle應(yīng)用系統(tǒng)處于良好的運(yùn)行狀態(tài)。
        本文主要是把一些Oracle Tuning的文章作了一個(gè)簡(jiǎn)單的總結(jié),力求以實(shí)際可操作為目的,配合講解部分理論知識(shí),使大部分具有一般Oracle知識(shí)的使用者能夠?qū)racle Tuning有所了解,并且能夠根據(jù)實(shí)際情況對(duì)某些參數(shù)進(jìn)行調(diào)整。關(guān)于更加詳細(xì)的知識(shí),請(qǐng)參見(jiàn)本文結(jié)束部分所提及的推薦書(shū)籍,同時(shí)由于該話題內(nèi)容太多且復(fù)雜,本文必定有失之偏頗甚至錯(cuò)誤的地方,請(qǐng)不吝賜教,并共同進(jìn)步。

1.  SGA的設(shè)置
        在Oracle Tuning中,對(duì)SGA的設(shè)置是關(guān)鍵。SGA,是指Shared Global Area , 或者是 System Global Area , 稱為共享全局區(qū)或者系統(tǒng)全局區(qū),結(jié)構(gòu)如下圖所示。


 
        對(duì)于SGA區(qū)域內(nèi)的內(nèi)存來(lái)說(shuō),是共享的、全局的,在UNIX 上,必須為oracle 設(shè)置共享內(nèi)存段(可以是一個(gè)或者多個(gè)),因?yàn)閛racle 在UNIX上是多進(jìn)程;而在WINDOWS上oracle是單進(jìn)程(多個(gè)線程),所以不用設(shè)置共享內(nèi)存段。

1.1  SGA的各個(gè)組成部分
下面用 sqlplus 查詢舉例看一下 SGA 各個(gè)組成部分的情況:
SQL> select * from v$sga;
NAME                      VALUE
--------------------              ----------
Fixed Size                   104936
Variable Size              823164928
Database Buffers          1073741824
Redo Buffers                 172032

或者
SQL> show sga
Total System Global Area   1897183720 bytes
Fixed Size                   104936 bytes
Variable Size              823164928 bytes
Database Buffers          1073741824 bytes
Redo Buffers                 172032 bytes

Fixed Size
        oracle 的不同平臺(tái)和不同版本下可能不一樣,但對(duì)于確定環(huán)境是一個(gè)固定的值,里面存儲(chǔ)了SGA 各部分組件的信息,可以看作引導(dǎo)建立SGA的區(qū)域。

Variable Size
        包含了shared_pool_size、java_pool_size、large_pool_size 等內(nèi)存設(shè)置

Database Buffers
        指數(shù)據(jù)緩沖區(qū),在8i 中包含db_block_buffer*db_block_size、buffer_pool_keep、buffer_pool_recycle 三部分內(nèi)存。在9i 中包含db_cache_size、db_keep_cache_size、db_recycle_cache_size、db_nk_cache_size。

Redo Buffers
       指日志緩沖區(qū),log_buffer。在這里要額外說(shuō)明一點(diǎn)的是,對(duì)于v$parameter、v$sgastat、v$sga查詢值可能不一樣。v$parameter 里面的值,是指用戶在初始化參數(shù)文件里面設(shè)置的值,v$sgastat是oracle 實(shí)際分配的日志緩沖區(qū)大小(因?yàn)榫彌_區(qū)的分配值實(shí)際上是離散的,也不是以block 為最小單位進(jìn)行分配的),v$sga 里面查詢的值,是在oracle 分配了日志緩沖區(qū)后,為了保護(hù)日志緩沖區(qū),設(shè)置了一些保護(hù)頁(yè),通常我們會(huì)發(fā)現(xiàn)保護(hù)頁(yè)大小是8k(不同環(huán)境可能不一樣)。參考如下內(nèi)容
SQL> select substr(name,1,10) name,substr(value,1,10) value
       2 from v$parameter where name = 'log_buffer';
NAME                 VALUE
--------------------  --------------------
log_buffer              163840

SQL> select * from v$sgastat where pool is null;

POOL        NAME                       BYTES
----------- --------------------------                ----------
            fixed_sga                      104936
            db_block_buffers            1073741824
            log_buffer                     163840

SQL> select * from v$sga;

NAME                      VALUE
--------------------              ----------
Fixed Size                   104936
Variable Size               823164928
Database Buffers           1073741824
Redo Buffers                 172032

172032 – 163840 = 8192

(以上試驗(yàn)數(shù)據(jù)是在 HP B.11.11 + Oracle 8.1.7.4 環(huán)境下得到的)


1.2  SGA的大小設(shè)置
       在對(duì)SGA的結(jié)構(gòu)進(jìn)行簡(jiǎn)單分析以后,下面是關(guān)于如何根據(jù)系統(tǒng)的情況正確設(shè)置SGA大小的問(wèn)題。
SGA是一塊內(nèi)存區(qū)域,占用的是系統(tǒng)物理內(nèi)存,因此對(duì)于一個(gè)Oracle應(yīng)用系統(tǒng)來(lái)說(shuō),SGA決不是越大越好,這就需要尋找一個(gè)系統(tǒng)優(yōu)化的平衡點(diǎn)。


1.2.1  設(shè)置參數(shù)前的準(zhǔn)備
在設(shè)置SGA的內(nèi)存參數(shù)之前,我們首先要問(wèn)自己幾個(gè)問(wèn)題
一:物理內(nèi)存多大
二:操作系統(tǒng)估計(jì)需要使用多少內(nèi)存
三:數(shù)據(jù)庫(kù)是使用文件系統(tǒng)還是裸設(shè)備
四:有多少并發(fā)連接
五:應(yīng)用是OLTP 類(lèi)型還是OLAP 類(lèi)型


根據(jù)這幾個(gè)問(wèn)題的答案,我們可以粗略地為系統(tǒng)估計(jì)一下內(nèi)存設(shè)置。那我們現(xiàn)在來(lái)逐個(gè)問(wèn)題地討論,首先物理內(nèi)存多大是最容易回答的一個(gè)問(wèn)題,然后操作系統(tǒng)估計(jì)使用多少內(nèi)存呢?從經(jīng)驗(yàn)上看,不會(huì)太多,通常應(yīng)該在200M 以內(nèi)(不包含大量進(jìn)程PCB)。
接下來(lái)我們要探討一個(gè)重要的問(wèn)題,那就是關(guān)于文件系統(tǒng)和裸設(shè)備的問(wèn)題,這往往容易被我們所忽略。操作系統(tǒng)對(duì)于文件系統(tǒng),使用了大量的buffer 來(lái)緩存操作系統(tǒng)塊。這樣當(dāng)數(shù)據(jù)庫(kù)獲取數(shù)據(jù)塊的時(shí)候,雖然SGA 中沒(méi)有命中,但卻實(shí)際上可能是從操作系統(tǒng)的文件緩存中獲取的。而假如數(shù)據(jù)庫(kù)和操作系統(tǒng)支持異步IO,則實(shí)際上當(dāng)數(shù)據(jù)庫(kù)寫(xiě)進(jìn)程DBWR寫(xiě)磁盤(pán)時(shí),操作系統(tǒng)在文件緩存中標(biāo)記該塊為延遲寫(xiě),等到真正地寫(xiě)入磁盤(pán)之后,操作系統(tǒng)才通知DBWR寫(xiě)磁盤(pán)完成。對(duì)于這部分文件緩存,所需要的內(nèi)存可能比較大,作為保守的估計(jì),我們應(yīng)該考慮在 0.2——0.3 倍內(nèi)存大小。但是如果我們使用的是裸設(shè)備,則不考慮這部分緩存的問(wèn)題。這樣的情況下SGA就有調(diào)大的機(jī)會(huì)。
關(guān)于數(shù)據(jù)庫(kù)有多少并發(fā)連接,這實(shí)際上關(guān)系到PGA 的大小(MTS 下還有l(wèi)arge_pool_size)。事實(shí)上這個(gè)問(wèn)題應(yīng)該說(shuō)還跟OLTP 類(lèi)型或者OLAP 類(lèi)型相關(guān)。對(duì)于OLTP類(lèi)型oracle 傾向于可使用MTS,對(duì)于OLAP 類(lèi)型使用獨(dú)立模式,同時(shí)OLAP 還可能涉及到大量的排序操作的查詢,這些都影響到我們內(nèi)存的使用。那么所有的問(wèn)題綜合起來(lái),實(shí)際上主要反映在UGA的大小上。UGA主要包含以下部分內(nèi)存設(shè)置
SQL> show parameters area_size

NAME                                 TYPE    VALUE
------------------------------------               -------     --------
bitmap_merge_area_size                   integer    1048576
create_bitmap_area_size                   integer    8388608
hash_area_size                           integer     131072
sort_area_size                            integer     65536
SQL>


共1 條記錄, 每頁(yè)顯示 10 條, 頁(yè)簽: [1]

Copyright © 2000 - 2009 曙海教育集團(tuán)
Powered By 曙海教育集團(tuán) Version 2.2
Processed in .03125 s, 2 queries.
主站蜘蛛池模板: 精品欧美一区二区久久久伦 | 香蕉香蕉国产片一级一级毛片 | 日本高清一区二区三区不卡免费 | 奇米影视在线观看 | 傲视影院午夜毛片 | 漂流教室免费观看韩国电影 | 91麻豆国产极品在线观看洋子 | 99SE久久爱五月天婷婷 | 一级在线免费视频 | 亚洲激情一区 | 国产日韩欧美在线观看 | 亚洲午夜精品视频 | 三级视频网站 | 亚洲成a人片在线观看www流畅 | av激情在线 | 国产欧美一区二区久久 | 国产精品不卡一区 | 黄a大片 | 日韩av片在线免费观看 | 久久精品久久久久 | 欧美成人免费丝袜视频在线观看 | 玖玖成人| 久久亚洲综合伊人 | 污视频在线免费 | 亚洲一区中文字幕 | 一区二区三区视频在线 | 午夜精品久久久久久 | 日韩成人性视频 | 好骚综合在线 | 噜噜噜动态图超猛烈 | 美女视频一区 | 欧美一做特黄毛片 | 91精品国产色综合久久 | 日本特黄的免费大片视频 | 91aiai.com| 久久99国产亚洲精品观看 | 久久久久国产亚洲日本 | 免费观看一级黄色片 | 狠狠综合久久av一区二区小说 | 亚洲一级免费视频 | 九九色综合 |