久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

oracle后臺進程是怎樣的

156次閱讀
沒有評論

共計 2454 個字符,預計需要花費 7 分鐘才能閱讀完成。

這篇文章將為大家詳細講解有關 oracle 后臺進程是怎樣的,文章內容質量較高,因此丸趣 TV 小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

oracle 后臺進程伴隨實例的啟動而啟動,他們主要是維護數據庫的穩定,相當于一個企業中的管理者及內部服務人員。他們并不會直接給用戶提供服務。

一:database write– 數據寫入   DBWR

    作用: 把 SGA 中被修改的數據同步到磁盤文件中。保證 Buffer Cache 中有足夠的空閑數據塊數量。

 PS:如果 LGWR 出現故障,DBWR 不會聽從 CKPT 命令罷工,因為 Oracle 在將數據緩存區數據寫到磁盤前,會先進行日志緩沖區寫進日志文件的操作,并耐心的等待其先完成,才會去完成這個內存刷到磁盤的動作,這就是所謂的凡事有記錄。

    觸發條件: 1、檢查點 CKPT 

  2、一個服務進程在設定的時間內沒有找到空閑塊

              3、每三秒自動喚醒一次。

    設置:DB_WRITER_PROCESS 用來定義 DBWn 進程數量。(commit 命令只是把記錄修改寫入日志文件,不是把修改后的數據寫入數據文件)

二:log write:LGWR– 日志文件寫入  (勞模,很重要很忙碌的一個進程)

    作用: 把 log buffer 中的日志內容寫入聯機的日志文件中,釋放 log 用戶 buffer 空間。

    觸發條件:1、用戶發出 commit 命令。(在 oracle 中稱為快速提交機制(fast commit)): 把 redo log buffer 中的記錄寫入日志文件,寫入一條提交的記錄

            2、三秒定時喚醒。

            3、日志緩沖區 log buffer 超過 1 /3,或日志數量超過 1M。

            4、DBWR 進程觸發:DBWn 視圖將臟數據塊寫入磁盤先檢測他的相關 redo 記錄是否寫入聯機日志文件,如果沒有就通知 LGWR 進程。在 oracle 中成為提前寫機制(write ahead):redo 記錄先于數據記錄被寫入磁盤

  5、聯機日志文件切換也將觸發 LGWR。

三:checkpoint:CKPT- 檢查點事件

    作用: 維護數據庫一致性狀態。檢測點時刻數據文件與 SGA 中的內容一致,這不是一個單獨的進程,要和前兩個進程一起工作呦。DBWR 寫入臟數據,同時觸發 LGWR 進程。

      CKPT 更新控制文件中的檢查點記錄。通過設置某參數調整來控制 CKPT 的觸發時間。參數是 FAST_START_MTTR_TARGET。

    觸發條件: 日志切換 (log switch) 會觸發檢查點。

四:process monitor:PMON– 維護用戶進程   進程監控器

    作用:1、發現用戶進程異常終止,并進行清理。釋放占用資源。(清理異常終止用戶使用的鎖)

        2、向監聽程序動態的注冊實例。

    觸發條件: 定時被喚醒,其他進程也會主動喚醒它。

五:system monitor:SMON– 實例維護進程   系統監控器

    作用:1、負責實例恢復,前滾 (Roll Forward) 恢復到實例關閉的狀態,使用最后一次檢查點后的日志進程重做。這時包括提交和未提交的事務。打開數據庫,進行回滾(Roll Back): 回滾未提交的事務。(oracle 承諾 commit 之后數據不會丟失,現在我們可以大致的了解是如何實現這個承諾,以及在數據的安全性和數據庫性能之間的平衡選擇。)

        2、負責清理臨時段,以釋放空間

    觸發條件: 定期被喚醒或者被其他事務主動喚醒。

六:LCKn 僅適用于 RAC 數據庫,最多可有 10 個進程(LCK0,LCK1,…,LCK9),用于實例間的封鎖。

七:archive:ARCH– 歸檔操作

    作用: 發生日志切換時把寫滿的聯機日志文件拷貝到歸檔目錄中。(LGWR 寫日志寫到需要覆蓋重寫的時候,觸發 ARCH 進程去轉移日志文件,復制出去形成歸檔日志文件,以免日志丟失)

    觸發條件: 日志切換時被 LGWR 喚醒。

    設置:LOG_ARCHIVE_MAX_PROCESSES 可以設置 oracle 啟動的時候 ARCH 的個數。

八:Distributed Database Recovery  –RECO  用于分布式數據庫的恢復

  某個應用跨越多個數據庫,需要都提交成功,事務才會成功,否則全部回滾。

以上是八個最核心、最重要、最有用進程,以下還列出了一些進程。

九:manageability monitor:MMON–AWR 主要的進程

    作用:1、收集 AWR 必須的統計數據,把統計數據寫入磁盤。10g 中保存在 SYSAUX 表空間中。

        2、生成 server–generated 報警

    每小時把 shared pool 中的統計信息寫入磁盤,或者 shared pool 占用超過 15%。 

十:manageability monitor light:MMNL: 輕量級的 MMON 

十一:memory manager:MMAN: 自動內容管理

    作用: 每分鐘都檢查 AWR 性能信息,并根據這些信息來決定 SGA 組件最佳分布。

    設置:STATISTICS_LEVEL: 統計級別

        SGA_TARGET:SGA 總大小  

十二:job queue coordinator:CJQ0– 數據庫定時任務  
       Oracle 的作業隊列管理依賴于后臺進程的執行,它們進行數據刷新及其他定期的作業。調度進程 CJQ0,選擇將要執行的作業并擴展作業隊列進程(J000-J999)以執行這些作業

十三:recover writer:RVWR

    作用: 為 flashback database 提供日志記錄。把數據塊的前鏡像寫入日志。 

十四:change tarcking writer:CTWR

    作用: 跟蹤數據塊的變化,把數據塊地址記錄到 change_tracking file 文件中。RMAN 的增量備份將使用這個文件來確定那些數據塊發生了變化,并進行備份

關于 oracle 后臺進程是怎樣的就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-07-20發表,共計2454字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 江华| 隆安县| 左权县| 云安县| 翁牛特旗| 广元市| 东乌| 遵化市| 吉木乃县| 屏山县| 阳新县| 平潭县| 满洲里市| 锦屏县| 澄迈县| 如皋市| 白河县| 富裕县| 玛多县| 长兴县| 祁连县| 宁安市| 昭觉县| 河北区| 绥化市| 瑞金市| 固始县| 连平县| 西充县| 朔州市| 朝阳县| 大安市| 北安市| 浦东新区| 嵊州市| 大洼县| 大关县| 江孜县| 麻城市| 扎鲁特旗| 安仁县|