一句話介紹Oracle的體系結構
一直認為自己對Oracle的理解還可以,特別是考完OCM認證以後。
幾天前一個朋友問我,你能簡單的介紹一下Oracle的體系結構嗎?我腦海中立即想到之前那幅Oracle 11g 體系結構圖(12C由於圖太複雜記不住),如下:
但是面對這幅圖我居然無法進行準確的描述,我確信這個圖我見過無數遍,也確信自己瞭解Oracle的體系結構,在OCP的時候老師講過,OCM老師也講過,可是我完全不知道如何用自己的語言去描述。一時間呆在那裡,只能尷尬的講了下說了下Oracle的物理儲存結構,一個庫有多個表空間,一個表空間有多個數據檔案等等應付。
因為他也是搞DBA的,在此之前我以為他會問我諸如DG,RAC,GC等等的一些問題,我自我安慰的想是我沒有準備,但是這個可是Oracle最基本的東西,我真的對這些知識有過自己的領悟嗎?
後來在網上翻了下資料,大多都是長篇大論,介紹的很詳細,但是並沒有三言兩語可以解釋清楚的答案。
最後翻到了以前OCP培訓時老師留給我的相關文件,找到了如下一段描述:
第一部分Oracle資料庫的體系結構:
Oracle Server = 例項(instance)+資料庫(database)。
例項是由一組記憶體結構(SGA system global area )+後臺程序+PGA
資料庫是由一組OS檔案組成,它由資料檔案、引數檔案、控制檔案、重做日誌檔案組成。
SGA是所有伺服器程序和後臺程序共享的記憶體區域,當instance啟動時建立該區域。它在內在區域中有且只有一個。它由資料快取記憶體(databasebuffer cache)、重做日誌快取區(redo log buffer)、共享池(shared pool)、大池(large pool)、java pool等組成。
為什麼把“第一部分”標紅,因為這是這個文件的開篇。接下來的一句已經清清楚楚明明白白告訴了我答案。餘下不到百字的介紹則描述了各自的功能和組成,如此的精煉簡潔,才發現這才是正真的大師風格。
彷彿被人打了一巴掌。
大師者集大成者也,雖然拿到所謂的大師認證,但我自己清楚的知道我離大師還有幾座山的距離。
鬼谷子的局有一句話 “欺人容易,欺心卻難”,總覺得這一句很適合自己,你可以裝著自己很高階,卻無法欺騙自己空虛的內心。
總以為做過一些高階實施就自得意滿,可是我真的理解了這些知識嗎?
有的時候最簡單也是最難,如果只是一直依樣畫葫蘆我將只是一個可憐的模仿者,永遠不可能成為正真的大師。