增量檢查點(diǎn)關(guān)鍵的四個(gè)參數
#####################################################
# 注意:日志文件切換將始終覆蓋由以下四個(gè)參數引起的檢查點(diǎn)!#
#####################################################
1. FAST_START_MTTR_TARGET(重要參數)
自 Oracle 9i 以來(lái), FAST_START_MTTR_TARGET參數已成為優(yōu)化增量檢查點(diǎn)目標的 首選方法。通過(guò) FAST_START_MTTR_TARGET,可以指定數據庫執行單實(shí)例的崩潰恢復所要花費的秒數?;趦炔拷y計信息,增量檢查點(diǎn)會(huì )自動(dòng)調整檢查點(diǎn)目標,以滿(mǎn)足 FAST_START_MTTR_TARGET的要求。
1)查看動(dòng)態(tài)性能視圖V$INSTANCE_RECOVERY.ESTIMATED_MTTR可以顯示當前預計的平均恢復時(shí)間 (MTTR)(以秒為單位)。即使未指定 FAST_START_MTTR_TARGET,也同樣會(huì )顯示此值。
2) 查看動(dòng)態(tài)性能視圖V$INSTANCE_RECOVERY.TARGET_MTTR可以顯示由系統強制執行的有效 MTTR 目標(以秒為單位)。
3) 查看動(dòng)態(tài)性能視圖V$MTTR_TARGET_ADVICE可以顯示在當前的 MTTR 設置下由當前的工作負載產(chǎn)生的 I/O 數量,以及在其他 MTTR 設置下將由當前的工作負載產(chǎn)生的預計 I/O 數量。此視圖可幫助我們在運行時(shí)性能和設置 FAST_START_MTTR_TARGET 以實(shí)現快速恢復之間進(jìn)行權衡。
2. LOG_CHECKPOINT_INTERVAL
LOG_CHECKPOINT_INTERVAL 參數指定增量檢查點(diǎn)目標滯后于當前日志尾的最多 redo 塊數量。
如果指定了 FAST_START_MTTR_TARGET,就不應設置 LOG_CHECKPOINT_INTERVAL 或將其設置為0。在大多數 Unix 系統上, 操作系統塊大小都是 512 字節。
比如,將 LOG_CHECKPOINT_INTERVAL 的值設置為 10000 就意味著(zhù)增量檢查點(diǎn)目標相對于當前日志尾的滯后不得超過(guò) 5M。以此計算,如果 redo 日志的大小為50M,則會(huì )對每個(gè)日志產(chǎn)生10個(gè)檢查點(diǎn)。
LOG_CHECKPOINT_INTERVAL也會(huì )影響檢查點(diǎn)的發(fā)生時(shí)間,所以需要保持其隨 redo 日志文件的大小變化而更新。檢查點(diǎn)的頻率是影響數據庫從意外故障中恢復所需時(shí)間的因素之一。
檢查點(diǎn)之間的間隔越長(cháng),則在發(fā)生系統崩潰時(shí),數據庫恢復所需的時(shí)間就越長(cháng)。檢查點(diǎn)間隔越短意味著(zhù)數據庫的恢復速度越快,但是代價(jià)是檢查點(diǎn)操作會(huì )消耗更多的資源。
另外,此參數還會(huì )影響在恢復的前滾階段期間完成數據庫恢復操作所需的時(shí)間。實(shí)際的恢復時(shí)間取決于此時(shí)間和其他因素,例如,故障類(lèi)型(實(shí)例或系統崩潰、介質(zhì)故障等)以及需要應用的歸檔 redo 日志數量。
3. LOG_CHECKPOINT_TIMEOUT
LOG_CHECKPOINT_TIMEOUT 參數指定增量檢查點(diǎn)目標應滯后于當前日志尾的最長(cháng)秒數。換句話(huà)說(shuō),它指定緩沖區緩存中的臟緩存可以保持臟狀態(tài)的時(shí)間。
檢查點(diǎn)頻率影響數據庫從意外故障中恢復所需的時(shí)間。檢查點(diǎn)之間的間隔越長(cháng),數據庫恢復所需的時(shí)間就越多。
Oracle官方建議使用 LOG_CHECKPOINT_INTERVAL 而不是 LOG_CHECKPOINT_TIMEOUT 來(lái)控制檢查點(diǎn)間隔,后者會(huì )每“n”秒啟動(dòng)一次檢查點(diǎn),而不管事務(wù)頻率。這可能會(huì )導致在事務(wù)量變化的情況下出現不必要的檢查點(diǎn)。只要出現這個(gè)可能,就必須避免不必要的檢查點(diǎn),以實(shí)現最佳性能。
注:
許多人會(huì )有這樣一種誤解:將 LOG_CHECKPOINT_TIMEOUT 設置為給定值之后,系統就會(huì )按該間隔啟動(dòng)日志切換,從而啟用用于standby數據庫配置的恢復窗口。 日志切換會(huì )引起檢查點(diǎn),但檢查點(diǎn)并不會(huì )引起日志切換。 引起日志切換的唯一方式是使用 ALTER SYSTEM SWITCH LOGFILE 進(jìn)行手動(dòng)操作或重新調節 redo 日志大小,以引起更為頻繁的切換。這由操作系統塊而非時(shí)間間隔控制。因此, 在線(xiàn) redo 日志的大小對性能和恢復至關(guān)重要!不能過(guò)大,也不能過(guò)小。
4. LOG_CHECKPOINTS_TO_ALERT
通過(guò) LOG_CHECKPOINTS_TO_ALERT,我們可以將檢查點(diǎn)記錄到alert日志中。
這樣做有助于確定檢查點(diǎn)是否按所需頻率發(fā)生。
注:
1)從Oracle9i開(kāi)始,此參數變?yōu)閯?dòng)態(tài)參數。
2)Oracle 通常建議將此參數設置為 TRUE,因為開(kāi)銷(xiāo)很小,可以忽略不計,但alert日志中的信息可能會(huì )非常有用。
免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng )、來(lái)自本網(wǎng)站內容采集于網(wǎng)絡(luò )互聯(lián)網(wǎng)轉載等其它媒體和分享為主,內容觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如侵犯了原作者的版權,請告知一經(jīng)查實(shí),將立刻刪除涉嫌侵權內容,聯(lián)系我們QQ:712375056,同時(shí)歡迎投稿傳遞力量。
Copyright ? 2009-2022 56dr.com. All Rights Reserved. 特網(wǎng)科技 特網(wǎng)云 版權所有 特網(wǎng)科技 粵ICP備16109289號
域名注冊服務(wù)機構:阿里云計算有限公司(萬(wàn)網(wǎng)) 域名服務(wù)機構:煙臺帝思普網(wǎng)絡(luò )科技有限公司(DNSPod) CDN服務(wù):阿里云計算有限公司 百度云 中國互聯(lián)網(wǎng)舉報中心 增值電信業(yè)務(wù)經(jīng)營(yíng)許可證B2
建議您使用Chrome、Firefox、Edge、IE10及以上版本和360等主流瀏覽器瀏覽本網(wǎng)站