<dfn id="is4kg"></dfn>
  • <ul id="is4kg"></ul>
  • <abbr id="is4kg"></abbr>
  • <ul id="is4kg"></ul>
    <bdo id="is4kg"></bdo>

    曙海教育集團(tuán)論壇開(kāi)發(fā)語(yǔ)言培訓(xùn)專區(qū)Oracle數(shù)據(jù)庫(kù) → Oracle Tuning的一些總結(jié)


      共有6711人關(guān)注過(guò)本帖樹(shù)形打印

    主題:Oracle Tuning的一些總結(jié)

    美女呀,離線,留言給我吧!
    wangxinxin
      1樓 個(gè)性首頁(yè) | 博客 | 信息 | 搜索 | 郵箱 | 主頁(yè) | UC


    加好友 發(fā)短信
    等級(jí):青蜂俠 帖子:1393 積分:14038 威望:0 精華:0 注冊(cè):2010-11-12 11:08:23
    Oracle Tuning的一些總結(jié)  發(fā)帖心情 Post By: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 類型還是OLAP 類型


    根據(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 類型或者OLAP 類型相關(guān)。對(duì)于OLTP類型oracle 傾向于可使用MTS,對(duì)于OLAP 類型使用獨(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>



    支持(0中立(0反對(duì)(0單帖管理 | 引用 | 回復(fù) 回到頂部

    返回版面帖子列表

    Oracle Tuning的一些總結(jié)








    簽名
    主站蜘蛛池模板: 一本到在线观看视频| 人成午夜免费大片在线观看| 97国产免费全部免费观看| 成年女人色毛片| 亚洲春色在线视频| 破处视频在线观看| 国产又黄又爽胸又大免费视频 | 一级毛片a免费播放王色| 日本在线视频WWW色影响| 亚洲精品无码久久久久秋霞| 精品一区二区三区四区| 国产伦精品一区二区三区| 1024在线观看国产天堂| 在打烊后仅剩两人接档泡面番| 在线无码VA中文字幕无码| 亚洲一区二区三区在线播放| 正在播放年轻大学生情侣 | 欧美交a欧美精品喷水| 免费高清日本完整版| 羞羞视频网站在线观看| 国产浮力第一影院| 亚洲狠狠婷婷综合久久久久 | 快穿之丁柔肉h暗卫温十三| 乱中年女人伦av一区二区| 欧美国产激情二区三区| 伊人久久精品线影院| 精品久久久久久久久午夜福利| 国产免费观看青青草原网站| 337p日本欧洲亚洲大胆精品555588| 在线|一区二区三区四区| 丁香婷婷六月天| 成人无码免费一区二区三区| 久久精品免费一区二区| 最强yin女系统白雪| 亚洲欧美日韩另类在线专区| 波多野结衣不卡| 午夜天堂精品久久久久 | 性一交一乱一伦一色一情| 久久夜色精品国产嚕嚕亚洲av| 暖暖免费观看日本版| 亚洲快播电影网|