<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Decode360's Blog

    業(yè)精于勤而荒于嬉 QQ:150355677 MSN:decode360@hotmail.com

      BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 ::  :: 管理 ::
      397 隨筆 :: 33 文章 :: 29 評論 :: 0 Trackbacks
    聯(lián)機重做日志概念
    ?
    ??? 今天來學(xué)習(xí)一下聯(lián)機重做日志的知識。這部分的知識也是相當(dāng)重要的一個部分,對于數(shù)據(jù)庫的恢復(fù)有著至關(guān)重要的作用。而且redo log的大小也是需要考慮的問題,經(jīng)常會出現(xiàn)一個事務(wù)操作的數(shù)據(jù)量太大而導(dǎo)致redo log不夠的情況報錯,需要注意。
    ?
    ?
    一、聯(lián)機重做日志
    ?
    ??? 1、重做線程
    ?
    ??? 每個數(shù)據(jù)庫實例的聯(lián)機重做日志組都是一個聯(lián)機重做的實例線程。
    ??? 不管有沒有多路復(fù)用,一般每個Oracle都只有一個重做線程,當(dāng)然RAC中每個實例都包含一個重做線程。
    ?
    ??? 2、聯(lián)機重做日志內(nèi)容
    ?
    ??? 重做條目記錄了可以對數(shù)據(jù)庫重新構(gòu)造的所有修改數(shù)據(jù),包括回滾段。
    ??? 重做記錄在SGA重做日志緩存區(qū)中緩沖,并由LGWR進程寫入某個聯(lián)機重做日志文件。
    ?
    ??? 事務(wù)被提交時,必定需要用LGWR將日志全部從SGA緩存中寫入聯(lián)機重做日志文件,然后才被告知提交完成。
    ??? LGWR還會為每個事務(wù)分配一個識別重做記錄的系統(tǒng)修改號(SCN)。
    ?
    ??? 當(dāng)重做日志緩存填滿時LGWR也會將重做條目寫入到重做日志文件,這些是可以回滾的。
    ?
    ??? 3、聯(lián)機重做日志寫入方式
    ?
    ??? 數(shù)據(jù)庫的聯(lián)機重做日志組務(wù)必要有兩個或兩個以上,這樣可以保持其中一個一直用于寫入,另一個用于歸檔。
    ?
    ??? LGWR采用循環(huán)寫入的方式,即寫滿一個換下一個?;驓w檔模式則寫滿了之后歸檔,否則則直接覆蓋。
    ?
    ??? 4、活動與非活動
    ?
    ??? 當(dāng)前正在寫入的聯(lián)機重做日志文件成為“當(dāng)前的”聯(lián)機重做日志文件。
    ??? 實例恢復(fù)時所需的聯(lián)機重做日志文件稱為“活動的”聯(lián)機重做日志文件。
    ??? 實例恢復(fù)不用的聯(lián)機重做日志文件稱為“非活動的”聯(lián)機重做日志文件。
    ?
    ??? 已經(jīng)進行存檔的聯(lián)機重做日志文件不能重新使用或重寫,知道ARCn存儲了這個文件內(nèi)容。
    ?
    ??? 5、日志切換 & 日志順序號
    ?
    ??? 一般默認(rèn)在一個文件寫滿時切換到寫一個文件,但是也可以規(guī)定時間進行切換,這樣就不用理會是否寫滿。
    ??? 也可以手動進行強制切換。
    ?
    ??? 每次日志切換都會分配一個新的日志順序號,歸檔時也將順序號進行保存。
    ??? 每個聯(lián)機或存檔的重做日志文件都通過它的日志順序號進行唯一標(biāo)識。
    ?
    ?
    二、規(guī)劃聯(lián)機重做日志
    ?
    ??? 1、多路復(fù)用(Group)
    ?
    ??? 多路復(fù)用是避免損壞聯(lián)機重做日志文件。
    ??? 多路復(fù)用時LGWR將同一重做日志信息同時寫入多個同樣的聯(lián)機重做日志文件。
    ?
    ??? 建議必須要使用多路復(fù)用(至少兩個組)。
    ?
    ??? redolog
    ?
    ??? 注:當(dāng)某個成員不可用,則標(biāo)記為INVALID,并向LGWR跟蹤文件和數(shù)據(jù)報警文件中寫入錯誤信息。不同問題會不同反映。
    ????? * 一個操作成功一個操作失敗時:按正常過程進行,忽略不可用成員
    ????? * 日志切換時需要存檔而不能訪問下一個組時:暫時中斷操作,直到歸檔完成
    ????? * 介質(zhì)失敗,切換時不能訪問下一組:關(guān)閉數(shù)據(jù)庫,并返回錯誤信息
    ????? * LGWR寫入時不能訪問文件:關(guān)閉數(shù)據(jù)庫,并返回錯誤信息
    ?
    ??? 注:不同的組中不一定需要相同個數(shù)的成員。只含有1個組的多路復(fù)用是非法的。
    ?
    ??? 2、日志成員存放在不同磁盤
    ?
    ??? 設(shè)置多路復(fù)用時,將日志組成員放置到不同的磁盤上。這樣當(dāng)某磁盤失敗時,可以跳過這個成員繼續(xù)工作。
    ?
    ??? 另外將成員放置到不同磁盤上可以消除LGWR和ARCn在后臺進程對聯(lián)機重做日志成員的爭奪。
    ?
    ??? 注:數(shù)據(jù)文件和聯(lián)機重做日志文件也應(yīng)該放在不同磁盤上,以減少寫數(shù)據(jù)塊和寫記錄之間出現(xiàn)的競爭。
    ?
    ??? 3、聯(lián)機重做日志成員的大小
    ?
    ??? 規(guī)定聯(lián)機重做日志的大小,以便將填滿的組存檔到脫機存檔介質(zhì)(磁帶或磁盤)的某個單元中。
    ??? 例如磁盤上有一個填滿的聯(lián)機重做日志組,且磁盤還有49%的未使用存儲空間,此時最好降低聯(lián)機重做日志文件的大小。
    ?
    ??? 多路復(fù)用時,同一個組中的多有成員比用擁有同樣的大??!
    ??? 不同組的成員大小不同,但是這樣沒有什么好處,而且會對檢驗點的設(shè)置帶來不便。
    ?
    ??? 4、聯(lián)機重做日志文件的數(shù)量
    ?
    ??? 聯(lián)機日志文件數(shù)量的確定最好的方法是測試不同的配置的效果。
    ??? 最佳配置:在不妨礙LGWR向重做日志寫入信息的前提下,使用盡可能少的組(至少2個組)。
    ?
    ??? 仔細(xì)檢查LGWR跟蹤文件和數(shù)據(jù)庫報警文件的內(nèi)容,如果消息表明:因為檢驗點還沒有完成或者組還沒有存檔的緣故,LGWR不得不頻繁得等待組,那么就需要添加組來解決問題。
    ?
    ??? 注:MAXLOGFILES-最大組數(shù);MAXLOGMEMBERS-最大成員數(shù);要修改這兩個參數(shù)需要重建數(shù)據(jù)庫或控制文件,所以創(chuàng)建數(shù)據(jù)庫時要慎重。
    ?
    ??? 5、控制存檔延遲
    ?
    ??? 在數(shù)據(jù)庫中使用聯(lián)機重做日志歸檔,然后將歸檔日志放到備用數(shù)據(jù)庫,通過查詢?nèi)罩緛磉M行和數(shù)據(jù)庫中同樣的操作。這兩個操作之間存在一個時間間隔,就叫做存檔延遲。可以通過ARCHIVE_LAG_TARGET初始化參數(shù)來嚴(yán)格限定延遲的時間長度。
    ?
    ??? 設(shè)置了ARCHIVE_LAG_TARGET之后,Oracle將定期檢查實例當(dāng)前的聯(lián)機重做日志,在發(fā)生一下情況時切換日志:
    ??? * n秒鐘前創(chuàng)建了當(dāng)前日志,并估計當(dāng)前日志存檔時間為m秒,而n+m值超過ARCHIVE_LAG_TARGET的值
    ??? * 當(dāng)前日志包含重做記錄
    ?
    ??? ARCHIVE_LAG_TARGET = 1800? 單位是秒,默認(rèn)為0,表示禁止該功能
    ?
    ??? 在選擇數(shù)值時考慮一下因素:
    ??? * 切換日志所消耗的系統(tǒng)開銷
    ??? * 作為日志完整條件的結(jié)果,通常日志切換發(fā)生的頻率
    ??? * 備用數(shù)據(jù)庫可以人壽多少重做損失
    ?
    ??? 注:當(dāng)數(shù)據(jù)庫本身就經(jīng)常切換時,設(shè)置這個值沒有什么意義,而且當(dāng)設(shè)置值很低時,對性能會產(chǎn)生負(fù)面影響。
    ?
    ?
    ?
    posted on 2008-11-25 21:22 decode360 閱讀(1131) 評論(0)  編輯  收藏 所屬分類: 08.DBA
    主站蜘蛛池模板: 亚洲日韩国产一区二区三区在线 | 亚洲码国产精品高潮在线| 久久精品熟女亚洲av麻豆 | 久久免费公开视频| 国产亚洲精品一品区99热| 国产免费久久精品99久久| 77777亚洲午夜久久多人| 疯狂做受xxxx高潮视频免费| 天天摸夜夜摸成人免费视频| 亚洲综合无码无在线观看| 成人毛片免费网站| 亚洲精品久久久久无码AV片软件| 成在人线AV无码免费| 亚洲精品动漫免费二区| 日本免费一区尤物| 日韩一级片免费观看| 亚洲区小说区图片区QVOD| 国产成人精品无码免费看| 精品亚洲成AV人在线观看| 国产高清免费视频| 亚洲日韩AV一区二区三区中文| 午夜免费不卡毛片完整版| 亚洲日韩精品国产一区二区三区 | 国产亚洲精品影视在线| 好男人看视频免费2019中文| 激情小说亚洲色图| 亚洲人JIZZ日本人| 无码中文字幕av免费放dvd| 亚洲欧洲日本国产| 青青草国产免费久久久下载| 一区二区三区AV高清免费波多| 亚洲AV午夜成人影院老师机影院| 久久精品免费观看国产| 亚洲AV无码专区在线亚| 四虎永久在线精品免费观看地址 | 最近免费中文字幕高清大全| 日韩亚洲产在线观看| 久久国产成人亚洲精品影院| 最近中文字幕免费mv在线视频| 亚洲av无码成人精品国产| 亚洲人成网77777色在线播放|