




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、最新 精品 Word 歡迎下載 可修改第一章 Oracle的體系架構 這章理論比較多,可能有點枯燥。大家要打起精神。從本章開始我們正式進入DBA I,DBA是一個崗位的縮寫(database adminstrator),也就是數據庫管理員。要做一個稱職的DBA,需要全面和深入的了解ORACLE的內部機制,包括ORACLE的實例(內存結構和后臺進程)、ORACLE物理結構、ORACLE邏輯結構、ORACLE的安裝,ORACLE維護、ORACLE網絡配置、ORACLE備份與恢復、ORACLE高可用性(DG,RAC,流,高級復制)、ORACLE性能優(yōu)化。另外還需要了解操作系統的維護和管理知識,存儲知
2、識,HA的知識等。所以需要非常多的知識進行串聯才能做一個合格的DBA。這些理論基礎上都是環(huán)環(huán)相扣,另外每個知識點還需要大量了實踐,來提升DBA的解決問題的思維和能力。接下來我們的課先從ORACLE的核心組件學習。本章的主要內容描述 Oracle 服務器的體系結構及其主要組件列出將用戶連接到 Oracle 例程所涉及的結構列出下列語句處理過程的各個階段:查詢DML 語句COMMITORACLE主要組件我們先來學習ORACLE的主要組件,來看一下ORACLE組件架構圖。這是一張全景ORACLE核心組件框架圖。每個核心組件會有很多小的組件構成,我們的DBA I就是來全面介紹每個核心組件的細節(jié)。了解每
3、個組件里面的細節(jié)確實不容易,這也是我們走向DBA的重中之重。ORACLE主要體系結構包括左上部分是用戶進程,服務器進程右上部分是實例下面是數據庫庫文件我們先腦子里有這么個概念,接下來會用一些生活化的故事來了解ORACLE機制,了解ORACLE為什么設計出這樣一張圖。我們先來看什么是ORACLE服務ORACLE服務我們現在各行各業(yè)抓的都是服務,有了好的服務,顧客才會選擇它的產品。我們現在IT界非常流行一個SOA(面向服務的體系結構)的概念,它將應用程序的不同功能單元(稱為服務)通過這些服務之間定義良好的接口和契約聯系起來。上圖是一個SOA的實用例子。ORACLE也同樣提供了一個服務,我們叫ORA
4、CLE SERVER,我們來看下面這張圖圖例 1一個ORACLE服務提供了開放的完整性的信息管理系統。ORACLE服務由一個實例和一個數據庫組成。我們用一個生活中的例子來便于理解。大家都去過圖書館,它存放的數據就是書,這書可以被學生借來看,或者被學生買來看,也可能是被采購員從外地采購來。圖書館就是提供一個圖書買賣和借閱的數據庫系統。但是我們知道大型圖書館一個城市就一個,學生們要想買書借書必須跑老遠到圖書館去,那精明的商家都會在各自的街道開有分店。比如我們所有的書籍都能在上海圖書館能買到,但是我們不用老遠跑到上海圖書館去買,我可以在自己行政區(qū)的圖書館去買,比如靜安區(qū)靜安書城店。我們可以在靜安區(qū)開
5、一家店叫靜安書城店,那如果靜安區(qū)的學生要買的書在靜安書城店如果有了,那就會馬上買到,因為學生離靜安書城店可比在黃浦區(qū)的上海圖書館近。如果該書在靜安書城店已經售完,或在靜安書城店從來沒有進過這本書,那就需要去上海圖書館去進貨。書的買賣和借閱就好比DELETE,INSERT,SELECT。那靜安書城店會有各個崗位的人負責進貨、銷售、庫存管理等工作,如何快速的進貨也需要這個采購員采用不同的規(guī)則。這個規(guī)則就好比我們的執(zhí)行計劃。所以我們看到上海圖書館和靜安書城店都是為學生服務的,這個就是SERVER(服務)。我們這里看到上海圖書館就是我們的DATABASE庫文件,靜安書城店是我們的INSTANCE,它來
6、有效的管理維持書籍的采購借閱和其它管理工作。那我們的ORACLE SERVER的概念是,一個ORACLE SERVER就是一個DATABASE 庫文件加上一個INSTANCE,也就是上海圖書館的靜安書城店提供的就是一個ORACLE SERVER。我們知道了什么是ORACLE服務,那我們了解下什么是ORALCE實例。Oracle實例圖例 2我們現在就明白ORACLE INSTANCE是一個數據庫庫文件進行實例化提供的服務,而它也是我們體系結構的核心。那實例它由什么組成呢?實例的組成一個實例只能訪問一個數據庫,但是你可以改變實例的初始化參數(如控制文件)來指向另一個數據庫。我們前面理解了靜安書城店
7、實例化一個上海圖書館,那也意味著我可以再開一個分店,如黃浦區(qū)黃浦書城店,錄屬于上海圖書館,那就是第二個ORACLE服務。兩個書城店關聯同一個圖書館對外提供服務,這就是RAC的概念,多個實例關聯一個數據庫。這時黃浦區(qū)的學生可以選擇黃浦書城店,也可以選擇靜安書城店提供的服務,但是往往會選擇離自己近的,而且顧客不擁擠的書店,否則買書交費都要排個長隊。ORACLE也會選擇負載相對比較低的實例或者LISTENER,這叫負載均衡。如果一個店拆了,還可以到另一個店買東西,這在ORACLE中稱為FAILOVER。實例由內存和后臺進程組成那我們拿靜安書城店來舉例,店要開張,我們需要租房子,每間房子有它特定的功能
8、,比如營業(yè)廳、倉庫、總經理辦公室,這些房子在ORACLE中稱為內存。有些房間也許是我們存放書籍的倉庫,也許是記錄采購員采購的歷史信息的采購室。那要籌備這個店所需要盤下或者購買的店面需要寫在籌備方案中,這個籌備方案在ORACLE中稱為初始化參數。 現在有了店,那店里是不是需要有不同崗位的管理人員來維持店的正常運轉?這些勤勞的管理人員在ORACLE中就稱為后臺進程。包括干輕活的ckpt干重活的dbwr而采購員/售貨員在ORACLE中就稱為服務器進程,來服務于學生。而學生在ORACLE中就稱為客戶端進程。 我們理解了上面的例子,現在來總結下。我們知道ORACLE SERVER是提供了數據庫服務:OR
9、ACLE SERVER = 1個DB + 1個INSTANCEINSTANCE = MEMORY + PROCESSRAC = N個ORACLE SERVER = 1個DB + N個INSTANCE有了這些概念,我們就好理解什么是共享服務器進程,什么是SGA,什么是PGA,什么是UGA,什么是CGA,什么是CURSOR了。用戶連接請求我們知道學生要想買書,就會去書店找營業(yè)員,或者打電話訂購,需要溝通書店的客服中心。當學生和營業(yè)員或者客服中心建立了連接,學生就可以提出自己想要做的事情,比如買某某書。ORACLE實例給用戶提供的服務也類似,用戶進程發(fā)出請求,關聯LISTENER再與服務器進程建立了
10、連接,或者用戶直接連接到服務器進程。圖例 3上圖我們看到,用戶會發(fā)出請求到指定的服務,這個用戶我們叫user process,也叫client process,是在客戶端的。用戶請求指定了服務(instance),指定了監(jiān)聽地址,監(jiān)聽地址的端口上檢查這個請求是否合法,是否屬于我服務的INSTANCE范圍內,如果合法,就在INSTANACE機器上建立服務器進程。這就在user process和server process間建立了連接會話,會話是服務器進程和客戶進程間的。這好比,小麗要去靜安店買書,會有一個前臺驗證你是否可以到這個店買書,是否有小麗要找的靜安書城店存在。如果可以,而且書店確實存在,
11、她會指派一個售貨員來服務小麗。這時候小麗和售貨員就建立了會話。這里詳細的過程我們將在DBA II網絡部分介紹。接下來售貨員會幫小麗去靜安店拿貨(內存),如果貨沒有,就去上海圖書館進貨。小麗和售貨員分別就是用戶進程和服務器進程。而那個前臺在ORACLE中稱為監(jiān)聽程序。Oracle DB的組成我們接下來該了解最關心的業(yè)務數據存放的地方,那就是DB庫文件圖例 4我們看到DB是一組不同類型的文件集合它由三類文件組成第一類是文本離線文件,如上圖左邊的參數文件、口令文件(spfile是服務端的)第二類也是離線文件, 上圖右邊歸檔文件第三類是我們最關心的文件,DB在線文件,它按功能分如下幾種DATAFILE
12、CONTROLFILEREDOFILE這三種文件組成了DB在線文件這里涉及到DB的物理結構和邏輯結構,我們在后面的課中會學習。Oracle物理結構接下來學習ORACLE的物理結構,這里只是學習一些框架的知識,詳細知識將在后面章節(jié)介紹。圖例 5ORACLE的物理結構指的是OS里直接能查看到的文件,可以是文件系統,可以是裸設備。但文件里的內部邏輯數據,只有ORACLE的命令才能查閱和修改。文件里的內部邏輯數據,只有ORACLE的命令才能查閱和修改。這句話我們應該怎么理解? 比如一個txt文件,是不是一個OS級別的文件? 我們可以用notpad(windows系統)命令或者vi(Linux系統)命令
13、查詢編輯內容。 Pfile是不是一樣? 但是Spfile, tablespace(XXX.dbf)的數據文件呢? Spfile大家是不能通過OS直接編輯的,spfile里的東東都是二進制的。 同樣,tablespace的數據文件我們通過OS命令也是看不出任何內容的,你用OS命令打開全是二進制亂碼,沒法看懂。 那tablespace里的數據怎么看?你只有登陸oracle后用select 命令查看或用insert 插入。 表就是種邏輯結構。 文件里的內部邏輯數據,只有ORACLE的命令才能查閱和修改。就是這個意思。大家理解了吧?我們看到3組文件類型,他們的文件頭都有一些描述信息、狀態(tài)信息、一致性信
14、息和控制信息。這對備份和恢復及一致性事務操作至關重要。大家知道SCN嗎? SCN就是上面信息里的一部分,屬于一致性信息。這些文件可以存儲在本機磁盤(非RAC),也可以存儲在磁盤柜,甚至是共享存儲系統支持(RAC),稱為concurrent設備。好,我們小結下。ORACLE的物理結構講的是什么概念?就是從OS角度看到的數據庫組成文件。Oracle內存結構那ORACLE服務中的另一塊核心就是實例,而談到實例就先要談到內存。也就是你要為靜安區(qū)學生提供圖書服務而要開一家靜安書店,你必須選好地址,把店的門面租下來,這店的門面就是內存。我們這章先不涉及怎么租這個門面,而是要了解要開這家店至少要租下幾個門面
15、來完成各自的只能,而每個門面各自又有什么功能呢?好,我們看一下內存結構圖例 6內存的組成內存由SGA和PGA組成,分別代表系統全局區(qū)和進程全局區(qū)。S可以理解成SYSTEM,也可以理解成SHARE。P可以理解成PROCESS,PRIVATE。所以S是共享的,P是私有的每個實例只有一個SGA,生命周期是實例,實例停止,SGA消亡。什么是實例?才講了的。 實例=ORACLE主內存結構(SGA) + 后臺進程而整個實例有很多PGA,對應的是進程,一個進程一個PGA,生命周期是進程。進程結束,則PGA消亡。我們的一個SQLPLUS會話是不是一個進程? 是的你連了100個SQLPLUS,就出現了100個PGA,但是SGA就一個??梢栽趨滴募镌O置 process = XXX 來限制PGA的數量,其實就是進程的數量。默認是 150個進程。SGA:系統全局區(qū),用于存儲數據庫信息的內存區(qū),該信息為數據庫所有進程所共享。它包含oracle服務器的數據和控制信息。PGA:程序全局區(qū),包含單個服務器進程或單個后臺進程的數據和控制信息,與幾個進程共享的SGA正好相反,PGA只被一個進程使用,在進程創(chuàng)建時分配,進程終
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 從基礎到進階的理財知識計劃
- 班級主題探討與交流計劃
- 打造積極向上的班級氛圍計劃
- 如何建設高效的倉庫決策體制計劃
- 應對城市安全挑戰(zhàn)的保安新思路計劃
- 教學績效考核標準計劃
- 基于兒童興趣的教研工作計劃
- 青少年心理與藝術表現計劃
- 跨境醫(yī)療電商平臺運營的法規(guī)與政策解讀
- 課外活動指導與支持計劃
- 電商提成合同模板
- 正念八周課件
- 服務響應時間和服務保障方案
- 蟾蜍毒抗病毒作用機制
- 光伏發(fā)電監(jiān)理合同協議
- 新能源汽車概論課件 3.1認知純電動汽車
- 【數學】小學四年級口算題大全(10000道)
- 中國腦出血診治指南
- 信息安全意識培訓課件
- 《食品標準與法規(guī)》知識考試題庫300題(含答案)
- 社團活動情況登記表
評論
0/150
提交評論