Oracle體繫結構理解(1)

來源:互聯網
上載者:User

標籤:oracle

    Oracle被設計成為可移植性很好的資料庫軟體,不管在Linux,Unix還是Windows下載都可以比較穩定的運行,在大型主機上也是支援的。

    本篇部落格僅僅用於記錄本人初次學習Oracle時對Oracle體繫結構的初步認識,如有不足希望大家給予指正。



資料庫與執行個體

    資料庫(database):物理作業系統檔案或者磁碟的集合。使用Oracle的ASM(自動儲存管理)時,或者在使用RAW分區時,資料庫可能不作為檔案系統中單獨的檔案,但是定義仍然不變。

    註:ASM在我第一次接觸的時候,暫時被解釋為和LVM具有相似功能的管理機制。

    執行個體(instance):一組Oracle後台進程(Linux與Unix下)以及一個共用記憶體區(記憶體結構),就算沒有磁碟儲存,執行個體也可以存在。

    註:資料庫可以由多個執行個體裝載和開啟,而執行個體可以在任何時間點轉載和開啟僅僅一個資料庫。也就是說,在同一個時間,通過當前執行個體僅僅可以訪問一個資料庫並進行互動。

    當我們執行一個僅軟體安裝的資料庫的操作,並不包括“啟動”資料庫的行為的時候,除軟體之外什麼都沒有。

    此時$ORACLE_HOME/dbs目錄(oracle的工作目錄)下沒有任何檔案,我們使用ls -l查看會發現一下資訊:

    Total 0

    其中不存在init.ora檔案(parameter file 參數檔案),此時通過ps命令也不會發現任何關於oracle的進程(除了grep oracle操作出現的oracle關鍵字之外),如果建庫執行dbca建立資料庫後,執行sqlplus / as sysdba,作為sysdba不使用使用者密碼認證訪問$ORACLE_SID所指定的執行個體名後,會產生init.ora的參數檔案。

   在訪問資料庫後,系統上執行ps aux就會發現許多進程,他們是以ora_開頭的,包括smon(系統監控),ckpt(檢查點),pmon(進程監控)等進程。

    註:一個執行個體在其生存期中最多隻能裝載和開啟一個執行個體,如果關閉資料庫(alter close database;),那麼則生存周期完畢(回收記憶體空間,結束相關進程),如果再想開啟一個資料庫,那麼需要丟棄該執行個體,建立一個新的執行個體(嘗試shutdown關閉執行個體後再startup再開啟相當於重建立立執行個體,可以開啟資料庫)。


這裡就是Oracle的instance與database概念的劃分。


Oracle體繫結構理解(1)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.