oracle進程結構簡介

來源:互聯網
上載者:User

標籤:

我們經常說資料庫執行個體,執行個體其實就是指的是資料庫的記憶體結構和進程結構。我們安裝資料庫軟體大量的是在安裝其記憶體和進程組件結構。上篇節我們介紹了oracle記憶體結構,這節就介紹下oracle進程結構。

首先看下oracle進程的分類:

1)使用者進程

是串連到Oracle DB 的應用程式或工具

2)資料庫進程

伺服器處理序:串連到Oracle執行個體,在使用者建立會話時啟動

後台進程:在啟動Oracle執行個體時啟動

3) 精靈/應用程式進程

網路監聽程式

 Gridinfrastructure 精靈

 

從進程角度一般可以把伺服器模式分為兩種:

 

專用伺服器:對於每個會話,專用伺服器處理序提供服務;

共用伺服器:不必為每個串連都提供一個專用伺服器處理序。指派程式會將多個傳入網路會話請求定向到共用伺服器處理序池。共用伺服器處理序為所有客戶機請求提供服務。

一般生產庫中都是共用模式;

下來簡要介紹下幾個主要的進程:

 

Oracle進程結構圖(此圖來源於oracle官方文檔) 

 

非RAC、非ASM 環境中的常見後台進程包括:

• 資料庫寫進程(DBWn)

• 日誌寫進程(LGWR)

• 檢查點進程(CKPT)

• 系統監視器進程(SMON)

• 進程監視器進程(PMON)

• 恢複器進程(RECO)

• 作業隊列協調程式(CJQ0)

• 作業從屬進程(Jnnn)

• 歸檔進程(ARCn)

• 隊列監視器進程(QMNn)

說明:

DBWn 進程負責將資料庫緩衝區快取中經過修改的緩衝區(灰資料緩衝區)寫入磁碟;DB_WRITER_PROCESSES 初始化參數指定了DBWn 進程的數量。DBWn 進程的最大數量為36。如果使用者在啟動過程中未指定該進程數,Oracle DB 將根據CPU 和處理器組的數量來決定如何設定DB_WRITER_PROCESSES

注意n代表可以有多個此類進程,但是如果是單一處理器伺服器,則配置n是沒用的。

 

在以下情況下,DBWn 進程將灰資料緩衝區寫入磁碟:

伺服器處理序找不到乾淨的可重用緩衝區時;推進檢查點需要;

 

日誌寫進程(LGWR) 負責管理重做日誌緩衝區,即將重做日誌緩衝區條目寫入磁碟上的重做記錄檔;大型系統的資料區塊操作頻率特別高,勢必有大量的日誌寫入日誌緩衝區,oracle必須保障時刻都有足夠的空間寫新的重做日誌,因此日誌寫進程觸發的頻率是非常高的,在以下情況都會觸發該進程工作:

使用者進程提交交易處理時,比如commit命令後;

重做日誌緩衝區的三分之一已滿時;

DBWn 進程將經過修改的緩衝區寫入磁碟之前;

每隔3秒;

 

檢查點進程(CKPT)

“檢查點”是一種資料結構,它定義了資料庫的重做線程中的系統更改號(SCN)。檢查點記錄在控制檔案和每個資料檔案頭中。它們是恢複操作的關鍵元素,遇到檢查點時,Oracle DB 必須更新所有資料檔案的頭,以記錄該檢查點的詳細資料。

這是由CKPT 進程完成的。SCN 機制很巧妙的保障了oracle資料恢複機制。這裡只是簡要提到,有興趣的朋友可以找找相關技術資料,理解SCN的原理,對資料庫的備份還原恢複都有相當的理論協助。

 

系統監視器進程(SMON)

 在執行個體啟動時執行恢複;

 清除不使用的臨時段;

進程監視器進程(PMON)

在使用者進程失敗時執行進程恢複。負責清除資料庫緩衝區快取和釋放該使用者進程佔用的資源;PMON 定期檢查指派程式和伺服器處理序的狀態,並重新啟動任何已停止啟動並執行指派程式和伺服器處理序。它是資料庫的進程管家。

 

恢複器進程(RECO)

 是一個用於分散式資料庫配置的後台進程,它可以自動解決涉及分散式交易處理的故障。

歸檔進程(ARCn)

發生日誌切換之後,歸檔進程(ARCn) 會將重做記錄檔複製到指定的存放裝置。僅當資料庫處於ARCHIVELOG 模式且已啟用自動歸檔時,才會存在ARCn 進程。資料庫日誌一般都會很大,同時資料庫日誌是特別重要的,只要有完整的日誌我們就能恢複丟失了的資料,所以日誌的丟失是一種極大的風險,我們需要把它定期遷移到異地儲存上(磁帶,磁碟等介質),這個過程叫做日誌歸檔,需要歸檔進程來完成。注意ARCHIVELOG模式的啟用,這個我們在後邊Database Backup還原部分會再細講;

 

 

Oracle進程體系就介紹到此,下一篇節我們介紹下oracle儲存體繫結構。歡迎關注【取知有道】,你的關注是我們堅持的原動力!

-------------------------------END-----------------------------------

 

【取知有道】這裡歡迎愛好學習的朋友,著重資料庫等IT知識的分享學習。

請敬關注【取知有道】訂閱號。搜尋公眾號【取知有道】,添加關注!

或長按此二維碼添加關注!
?

近期分享:

Oracle基礎結構架構方面,涉及執行個體記憶體結構、進程結構、實體儲存體結構、邏輯儲存體系等基礎理論。

 

 

oracle進程結構簡介

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.