第一章 Oracle數據庫簡介
這章提供了Oracle 數據庫的以及下列內容的概述:
什麼是關係數據庫
Schema 對象有哪些
數據的訪問方式
事務管理
Oracle數據庫體系結構
Oracle官方文檔閱讀路徑圖
什麼是關係數據庫
每個公司(組織)都有信息要存儲和管理,用來滿足它的一些需求.舉個例子.一個公司必須收集和維護每個員工的人力資源記錄.必須保證這些信息的可用性,而信息系統是一個正式的系統用來存儲和處理信息
一個信息系統可能是一個紙盒子,有自己的規律用來存放和檢索文件夾
不管怎樣,在今天,絕大部分公司都使用database(數據庫)來自動化他們的信息系統.
database(數據庫)是一個將信息處理成一個一個單元的然後收集組織起來
database(數據庫)就是用來收集,存儲以及檢索 應用程序使用的相關數據
數據庫管理系統(DBMS)
DBMS是一個用來存儲,組織以及檢索數據的軟件,通常一個DBMS有以下幾個元素:
·Kernel code 內核編碼
這個編碼管理DBMS的內存和存儲
·元數據存儲庫(Repository)
這個存儲庫(Repository)通常叫 數據字典
·查詢語言
這個語言使應用程序可以訪問數據(data)
數據庫應用程序(databaseapplication)是一個軟件程序,通過與數據庫(database)交互而訪問和操作數據。就是說一個和數據庫有交互的應用軟件就叫數據庫應用程序
第一代DBMS(databasemanagement system) 有下面這些類型:
·Hierarchical
Hierarchical database 將數據組織成一個樹狀結構,每個父記錄有一個或多個子記錄,和文件系統的結構很像
·Network(網絡)
Network database 和Hierarchicaldatabase很相似,除了記錄之間的關係是多對多,而不是 一對多
這些一代DBMS把數據存儲成死板的,預先定義好的關係中。因爲沒有DDL(data definition language)存在,修改數據的結構是非常麻煩,同樣,這些系統缺乏一個簡單的查詢語言,這些都對應用程序的開發造成了阻礙和麻煩。
關係模型(RelationalModel)
在他1970年開創性論文" A Relational Model of Data for Large Shared Data Banks",E.F. Codee(關係數據庫之父)定義了一個基於關係模型的數學集合理論.今天,最被廣泛接受的數據庫模型就是關係模型
關係型數據庫(relational database)是一個符合關係模型的數據庫,
關係模型主要有以下幾個方面:
·結構
明確定義過的對象存儲或者訪問數據庫中的數據。
·操作
清楚定義的動作(actions) 允許應用程序去操作數據和數據庫的結構
·完整的規則管理着操作(操作數據和操作結構)
關係型數據庫存儲數據到一組簡單的關係中.relation 是一組元組(tuples),元組(tuple)是一組無序的屬性值
表(table)是一個二維關係由行(元組)以及列(屬性)表示的東西。表中的每行都有同樣的列,關係型數據庫是一個將數據存儲在relations(tables)的數據庫,舉個例子,一個關係型數據庫可以存儲公司僱員信息進employee表,department表,以及salary表。
關係型數據庫管理系統(RDBMS)
關係模型是RDBMS的基礎.本質上來說,一個RDBMS移動數據進入database,儲存數據,以及檢索數據。這樣這些數據就可以被應用程序所操作,
RDBMS的操作分爲以下幾種類型:
·邏輯操作(Logical operations)
在這種操作中,應用程序指定什麼內容是需要的,舉個例子,一個應用程序請求一個僱員名稱或者增加個僱員記錄到一個表。-也就是說 我只需要告訴你我要什麼(what)
·物理操作(Physical operations)
在這種操作中,RDBMS要確認該怎樣進行和完成 命令.舉個例子,一個應用查詢某表,這個數據庫可以使用index(索引)去找到要查詢的行,讀這些數據進入內存(memory),以及執行一堆其他步驟,才能返回結果給應用.因爲RDBMS就是負責存儲和檢索數據的,所以物理操作對於應用來說是透明的-也就是說 應用只要selelct delete xxx 剩下的事數據庫自己會搞定
Oracle 數據庫就是一個RDBMS. 而實現了面相對象的特性,如用戶定義類型,權限繼承以及多態(polymorphism,搞不懂啥意思)的RDBMS被成爲"object-relationaldatabase management system(ORDBMS)".
Oracledatabase擁有擴展過的關係模型,也就是object-relational model。這使得在關係型數據庫中存儲複雜的business model 成爲了可能。
Oracle簡史 -這個要看一看,可以用來出去tree new bee
當前版本的Oracle database 超過30年的創新研發的結果.
而Oracle database進化過程中的亮點包括:
·Oracle的創建
1977年,Larry Ellison(這哥們可真是rich man),Bob Miner 以及Ed Oates 創建了" Software Development Laboratories" ,這是"Relational Software,Inc.(RSI)"的前身,在1983年,RSI又變成了"Oracle Systems Corporation" 以及後來的"OracleCorporation"
·第一版賣錢的RDBMS
1979年,RSI 推出了Oracle V2(Version 2) 這是第一塊用來市場銷售的 基於sql的RDBMS(Sql-based RDBMS),這是一個在關係型數據庫上具有里程碑意義的事件
·Portable version of oracle database(翻譯過來是可移植,也就是說可以跨平臺的)
Oracle Version 3,在1983年發佈。是第一款能同時運行在大型機,小型機,和PC上的關係型數據庫,使數據庫能夠在多種平臺運行
·增強版本併發控制,數據分發,以及可擴展性
Version 4 增加了多版本多一致性.Version5發佈在1985年,支持了C/S運算以及分佈式數據庫系統.Version 6 優化了 磁盤I/O,行鎖,可擴展性以及備份和恢復,並且 version6引進了PL/SQL,PL/SQL是基於SQL的可程序增強。
·能夠存儲的程序化的PL/SQL包(以前都是臨時包,現在能存進庫裏了)
Oracle7 在1992年發佈,引進了觸發器和可存儲的PLSQL包
·分區表
Oracle8發佈在1997年,是個object-relational database,支持了很多數據類型(data types),另外Oracle8支持了大表的分區
·Internet computing(也就是8i,9i的那個i的來源)
Oracle8i數據庫,發佈在1999年,本身支持了Internet中的各種協議以及服務端的JAVA支持.Oracle8i 是爲了internet computing而設計的,使數據庫能部署在多層環境中.
·Oracle Real Application Clusters(Oracle RAC)
Oracle9i數據庫增加了Oracle Rac。2001發佈。使得多個instance可以同時訪問一個database,另外,增加了Oracle XML 數據庫(Oracle XML DB),能夠存儲和查詢XML。
·Grid computing
Oracle Database 10g 發佈在2003,增加了grid computing.這個版本使的公司可以根據grid infrastructure 將一大堆低成本的服務器虛擬化成一個 計算資源(說的跟真的似的 - -切!),還有一個關鍵目標是使數據庫能夠自我管理,以及自我調整(說白了就是自動化了很多),Oracle Automatic Storage Management(Oracle ASM) 幫助完成虛擬花和簡單化數據庫存儲的管理。
·增加了可管理型,可診斷性,以及可用性
Oracle database 11g,發佈在2007年,增加了一堆新特性,使得管理員和開發能很快適應不短變化的商業需求.增加適應性的關鍵是,通過整合信息和儘可能的自動化,簡化信息的基礎架構
Schema Objects(Schema中有哪些東西)
一個RDBMS的特性就是存儲數據 的物理數據存儲 和邏輯數據結構是相互獨立的。在Oracle Database,一個database schema 是一個容器,裏面放着一堆邏輯數據結構(表什麼的).一個數據庫user擁有且只有一個schema,schema名字和用戶名字一樣。(不懂來找我)。
SchemaObjects是用戶創建的結構,database中數據的具現化,數據庫支持很多類型的schema objects,而其中最重要的就是表,和索引。
Tables(表)
一個表描述一個實體 比如 僱員們的信息,你可以定義一個表,表名比如叫employees,以及一堆列,一般情況下,你得給每個列一個列名,一個數據類型(char什麼的),以及寬度(比如char(20))
一個表就是一堆行,一個列表示一個實體的屬性,其中每行表示一個實體的一例(比如employees表中的一個employee)。
你可以爲表的每列指定規則(可選的),這些規則被稱爲intergrityconstrants(完整性約束).舉個例子 "NOT NULL"完整性約束.這個約束強制保證每行的這個列必須有值,不能是空的
Index(索引)
索引是一個可選的數據結構,你可以將它創建在表的一個列或者多個列上。索引可以增加數據檢索的速度,當處理一個查詢,數據庫可以使用索引高效的去定位相關的行.索引用在當應用經常查詢指定的行,或者一小部分行時。
索引的邏輯上和物理上獨立的數據。因此,你drop和create索引對錶和其他indexes是沒有影響的.所有的應用程序在你drop索引以後依然有效(不過性能會受到影響,還有這裏drop是刪除的意思)。
Data Access
DBMS中一個普遍的需求就是遵循和接受行業標準的數據訪問語言
Structured Query Language(SQL)
SQL是一個基於數據集的聲明式語言,它被用來和RDBMS(如oracledatabase)進行交互。
C語言是程序語言,需要描述這件事該怎樣完成,而SQL不是程序語言,它只需要描述需要什麼即可。用戶只需要指定他們想要的結果(例如,當前公司所有員工的名稱),而不是怎樣一步一步獲取他們,SQL是ANSI爲RDBMS定義的標準語言。
在Oracle database中所有對數據的操作都是通過執行SQL來實現的。
SQL語法非常簡單,但功能非常強大。
SQL語句是一串字符,例如下面的:
SELECT first_name,last_name FROM employees;
通過SQL語句你可以完成下列任務:
·查詢數據
·Insert(插),update(更新)以及delete(刪除)表中的行
·Create(創建),replace(替換),alter(更改)以及drop(刪除)對象
·控制對數據庫以及其中對象的訪問(權限控制)
·保證數據庫的一致性和完整性
SQL是前面這些任務整合起來的語言。Oracle SQL 是ANSI標準的落實,但Oracle SQL支持很多標準SQL不支持的特性。
PL/SQL and Java
PL/SQL是OracleSQL的程序化擴展.PL/SQL集成Oracle database中的,可以使用Oracle 數據庫的 SQL、功能,和數據類型.可以使用PL/SQL來控制SQL程序流,使用變量,以及些錯誤處理程序
PL/SQL的一個主要好處就是編的東西可以存在數據庫本身.procedure 或function是一個schema object。它包括一堆sql以及其他的PL/SQL結構,它們組合在一起,存儲進數據庫,然後作爲一個東西來運行,用來解決指定的問題,或者相關的一些問題。
而這種數據庫本身的程序有一個很重要的好處,就是可以部署你想用它的任何地方。
Oracle 數據庫也可以保存由Java寫的programunits .你可以從Java中調用PL/SQL程序,也可以從PL/SQL中調用Java程序。
事務管理(Transaction Management)
Oracle數據庫是多用戶數據庫,數據庫必須保證多用戶併發工作,且不會造成數據的不一致損壞。
事務(Transaction)
RDBMS必須可以將一組SQL要麼全部提交(committed,意思是操作應用到了數據庫),或者全部回滾(rolled back,意思是這一組sql全部不生效).
事務(transaction)是一個邏輯的,原子(意味着不可分割)單元,它包含一個或者多個SQL語句.
下面這是一個需要用到事務的案例,將資金從一個儲蓄賬戶轉移到支票賬戶
這個轉移需要分成幾個操作:
1、 從儲蓄賬戶裏減去
2、 增加到支票賬戶
3、 記錄事務到事務日誌
Oracle數據庫要保證這三個操作,要麼同時成功,要麼同時失敗,
舉個例子:如果一個事務在執行時出現了硬件錯誤,而導致沒有執行完成,則這個事務中的所有語句全部都要回滾(把已經造成的影響消除掉)
事務是將Oracle數據庫和文件系統區分開的特性中的一個.如果你執行一個原子操作,它更行了一些文件,因爲系統錯誤導致只更新了一般,則這些文件將不再一致.與之對比,事務會將Oracle數據庫 從一個一致性狀態變成另一個一致性狀態.
事務最基本也是最重要的特性就是"all or nothing(要不就全部搞定,要不就全部搞不定)"
數據併發(Data concurrency)
多用戶RDBMS的一個需求就是如何控制併發, 併發指的是多個用戶同時訪問一個數據.如果沒有併發控制,用戶修改的數據就是不合適的,會危害數據完整性
舉個例子,一個用戶更行了一行,而另一個用戶又在同一時間更新了他
如果多用戶訪問同樣的數據,則管理併發的方法既是讓用戶等待(排隊).
無論如何,DBMS的一個目標是減少這種等待時間.所有修改數據的SQL語句必須儘可能減少影響.
毀滅性的互相影響,這個是指不爭取的更新或者修改底層數據結構導致的,必須避免
Oracle數據庫使用鎖(locks)來控制數據的併發。lock是用來防止因爲不同事物同事訪問同一共享資源而導致的毀滅性影響。Locks幫助保證數據的完整性,同事允許最大併發訪問數據。
數據一致性(Data Consistency)
在Oracle數據庫中,每個用戶看到的數據狀態必須是一致的,包括用戶自己的事務中的顯示修改以及別的用戶已經提交事務中的修改。
舉個例子:數據庫必須預防髒讀(dirty reads),這個髒讀出現在 當一個事務 看到別的用戶未提交的併發修改。
Oracle數據庫強制執行 statement-level read consistency(語句級讀一致性),它保證了單個查詢的數據結果是已經提交的,以及一致的在一個時間點上。依賴於事務隔離級別(transaction isolation level),這個時間點是這個語句開始執行的時間。Flashback Query(閃回查詢)特性使的你可以顯示的指定要查看的是簡單(Oracle的一個特性)
數據庫也可以對一個事務中的所有查詢提供讀一致性,被稱爲"transaction-level read consistency"(事務級讀一致性)。
在這種隔離級別中,一個事務中的所有語句看到的數據都是同一個時間點的,這個時間點就是事務開始的時間!
Oracle數據庫體系結構
數據庫服務器 是信息管理的一個關鍵,普通情況下,服務器可靠的管理着大量的數據(多用戶環境),用戶們能同時併發的訪問相同的數據,數據庫服務器還能阻止非法訪問,以及恢復錯誤。
數據庫(Database)和實例(Instance)
一個Oracle數據庫服務(server)由一個database和最少一個database Instance組成(通常被簡單的稱爲Instance).
由於一個Instance和一個database緊密聯繫,
所以 術語 OracleDatabase 在大部分時間就是指 Instance + Database(也就是說,如果不強調的話 Oracle database(數據庫)就是指一個instance+database,不懂來問)。
嚴格意義上講:
·Database(數據庫)
一個database就是在硬盤上的一堆文件,用來存放數據。
·Database Instance(實例)
一個Instance就是一堆內存結構,這些內存結構管理着數據庫文件,Instance包括一個共享的內存區域 叫做 system global area(SGA),以及一大堆後臺進程.
也就是說:Database 就是磁盤上的那一堆文件(數據文件,日誌文件,密碼文件等等),嚴格上講就叫database.而Instance就是內存裏的東西,什麼sga,後臺進程。RAC就是一個database而多個Instance.
圖 1-1顯示了一個database以及Instance,每個用戶連接到Instance的時候,應用都會運行一個client process(客戶端進程,sqlplus之類的),每個客戶端進程,在服務器端都有一個與之相關的server process. server process 會劃分出自己獨享的內存,稱之爲program global area(PGA)
圖 1-1 Oracle Instance和Database
一個數據庫可以從物理和邏輯兩個角度考慮.
物理數據是指能在操作系統層面看見的.舉個栗子,比如Linux操作系統的話 可以用ls顯示出數據文件 用ps顯示出後臺進程.
邏輯數據是比如說表。這東西只有數據庫認。一個sql語句可以列出Oracle數據庫中所有的表。但是操作系統的工具(ls什麼的)是不能列出的。
數據庫有physical structures(物理結構)和logicalstructures(邏輯結構)兩種.
因爲這兩種結構是分開的,所以對於物理結構的管理 是不會影響邏輯結構的訪問的。舉個例子:物理數據文件修改名字,並不會將 在這個文件中存放有數據的表的名字也一起修改。
Database storage Structures(數據庫存儲結構)
RDBMS必須得能夠存儲數據。這小節簡單介紹一下Oracle 數據庫的物理結構和邏輯結構
Physical Storage Structures(物理結構)
物理結構是一大堆存着各種數據的文件.當你執行SQL語句CREATEDATABASE,這下面這些文件會創建:
·Data files(數據文件)
每個Oracle數據庫都會有一個或多個物理data files,data files包含數據庫中的所有數據.數據庫邏輯結構中的數據,比如表和索引中的數據,其實就是物理的存儲在data file中的。
·Control Files(控制文件)
每個Oracle數據庫都有一個控制文件(可以有多個副本),控制文件包含數據庫物理結構信息,包括數據庫名字,以及數據庫文件的名字和位置.
·Online redo log files(redo日誌)
每個數據庫都擁有兩個或者更多的Online redo log files.redo log中含有redo entries(條目)又稱之爲redo record(記錄),這東西記錄了數據的任何一次變化
還有很多重要的其他文件,這些文件包括 parameter files(參數文件),diagnostic files(診斷文件,或者叫trace文件,alert文件).
還有對備份和恢復很重要的離線文件,其中有Backup files(備份文件)以及archived redo log files(歸檔日誌文件,在線日誌是循環利用的,在一個在線日誌被覆蓋以前,可以將其歸檔起來)
Logical Storage Structures(邏輯結構)
這節討論邏輯結構,下面這些邏輯結構使得Oracle數據庫能更加細緻(細粒度)的控制磁盤空間:
·Data blocks(數據塊)
這是數據庫中最小存儲單位,Oracle數據庫的數據就是存儲在data blocks中的。一個data block對應磁盤上一個指定的大小(2k,4k,8k,16,32k)
·Extents(區)
一個區由一堆連續的塊組成,最小的分配單位
·Segments(段)
每個object(例如,表,或索引)就是一個段,由一堆區組成。
·Tablespaces(表空間)
表空間是個容器,裏面放着segments,每個表空間最少由一個數據文件構成
表空間其實就是邏輯和物理的交匯處,如果學過Unix的話可以由VG,LV,PV這些理解。一個模式。由數據文件組成表空間,再從表空間上劃分段
Database Instance Structures(數據庫實例結構)
Oracle database 通過使用內存結構和後臺進程來管理和訪問database(嚴格意義上的,一堆文件,還記得吧?).所有的內存結構都存在主機的內存裏。
當應用程序連接Oracle database時,它們連接的其實就的
Instance. 實例 通過與 pga 和server process的交互來服務於應用程序。
Oracle Database Processes(Oracle數據庫進程)
進程(process)是操作系統的一種機制,用來完成一連串的操作。一些操作系統使用的術語是 job,task,或者thread(線程),按照“用來完成一連串的操作”這個目的來講,thread和process的意思是一樣的。
Oracle database instance的進程有以下幾種類型:
·Client processes(客戶端進程,運行在客戶端機器上的)
比如sqlplus
·Background processes(後臺進程)
這些進程,每種都有自己固定的功能,Oracle後臺進程都是異步I/O的 and 監控別的Oracle 數據庫進程,調整其並行度。
·Server processes(服務進程)
這種進行負責和Client processes通訊,以及交互,滿足Client processes的要求。
Oracle processes 包括server process 以及background processes。在大多數環境中,Oracle Processes以及Client processes運行在不同的電腦上。
Instance Memory Structures(實例內存結構)
Oracle 數據庫的內存結構都是爲了一些目的而創建出來的。比如用戶之間共享數據,每個用戶都有自己的私有內存區域
下面就是Instance中的內存結構:
·System Global Area(SGA)
SGA是一堆共享的內存結構,包含了一個實例的數據以及各種控制信息(buffer cache,shared pool之類的)
·Program Global Areas(PGA)
PGA是內存區域,每塊區域包含了一個Server進程的數據和控制信息。每個Server process以及background process有它自己的PGA。並且是獨佔訪問的,非共享的。
Application and Networking Architecture(應用以及網絡體系結構)
爲了充分利用給定的計算機系統或者網絡,Oracle數據庫使處理過程分成兩部分,跑着RDBMS的計算機負責處理數據庫該乾的事情,而跑着應用程序的電腦要處理數據的顯示和解釋。
Application Architecture(應用體系結構)
應用體系結構指的是一個數據庫應用連接一個Oracle數據庫時的運行環境
兩個用的最多的數據庫體系結構是Client/Server和多層(加一箇中間件)
在Client/Server體系結構中,
客戶端應用啓動一個對於數據庫的操作請求.
服務端接受並處理從客戶端發來的請求。
在傳統的多層體系結構中,一個或多個應用服務器會執行應用操作的一部分, 一個應用服務器包括應用邏輯中很大的一部分,提供客戶端對數據的訪問,並且執行一些查詢處理,從而減少了數據庫的壓力。應用服務器可以作爲客戶端們以及數據庫們的一箇中間接口,增加了額外的安全性。
Service-oriented architecture(SOA)面相服務的體系結構。是一種當應用功能封裝進services時使用的多層結構
SOA services 通常用在Web Services,WebServices可通過HTTP訪問並且基於XML標準,比如Web Services Description Language(WSDL)以及SOAP。
Oracle數據庫可以在傳統的多層結構或者SOA環境中 作爲Web服務的提供者。
Networking Architecture(網絡結構)
Oracle Net Services(Oracle網絡服務)是數據庫和網絡通訊協議之間的接口,它促成了分佈式處理以及分佈式數據庫。通訊協議定義了數據在網絡中發送和接受的方式。Oracle Net Services支持在大多數網絡協議上通訊,包括TCP/IP,HTTP,FTP以及WebDAV.
Oracle Net,Oracle Net Services的一個組件,建立和維護從客戶端應用到數據庫服務器的網絡會話(session)。在網絡會話建立好以後,Oracle Net 將作爲 客戶端與數據庫服務器的數據通訊員,傳遞他們之間的信息。Oracle Net可以執行這些工作是因爲它在這條網絡涉及到的每個計算機上(比如這裏,就是client 和server 每個機器都有Oracle Net)
Oracle Net Services有一個重要的組件是Oracle Net Listener(簡稱爲監聽),監聽是一個單獨的進程,它一般運行在數據庫服務器上(也就是有二般的情況,那種以後再討論)。
客戶端應用可以發送連接請求到Listener(監聽),監聽將這些請求轉到數據庫服務。
當一個連接已經建立好了,這時客戶端和數據庫端將直接通訊(不再經過監聽)
服務器接受客戶端請求最普遍的方式有:
·Dedicated server architecture(專有服務器結構)
每個客戶端進程對應一個服務端進程.專有的。每個新的連接都會分配一個專有的服務端進程。
·Shared server architecture(共享服務器結構)
數據庫使用一個共享進程池來處理衆多的連接,一個客戶端進程不再與服務器進程通訊,而是跟dispatcher(調度程序)進行通訊。調度程序個進程,它使的衆多的客戶端連接到一個instance的時候不需要每個都劃分一個單獨的服務進程。
Oracle數據庫文檔閱讀地圖
這節說明了該爲什麼閱讀,以及怎樣閱讀聯機文檔。
對於菜鳥來說,Oracle數據庫文檔似乎多的讓人害怕。不僅有超過175本的手冊,而且大部分都超過幾百頁。
不過,有 設定好的閱讀路徑 保證用戶能儘可能高效的找到他們需要的信息
這些文檔分爲三層或者三組:基礎,中級,高級。用戶從基礎組開始讀起(Oracle Database 2 Day DBA,Oracle Database 2 DayDeveloper's Guide,或者本手冊[Concepts]),然後到中級組(the 2 day + 系列),以及最終進入高級手冊,高級手冊包括了其餘的手冊
Basic Group基礎組
Oracle數據庫菜鳥可以選擇一本或者多本從頭到尾讀一遍。屬於本組的手冊,在設計爲在兩天內可以讀完的。除了這本手冊,基礎組還包括:
·Oracle Database 2 Day DBA
這本手冊是給DBA快速開始的,教你執行日常的數據庫管理工作。它教你爲了保證數據庫可用而需要執行的所有常見的管理任務。包括怎樣執行基礎的問題解決以及性能監控活動。
·Oracle Database 2 Day Developer's Guide
這本手冊是給數據庫開發快速開始的,它說明怎樣通過SQL和PL/SQL來使用Oracle數據庫的基本特性。
基礎組的手冊都是緊密相連的,這反映在交叉引用的數量上。舉個例子,Oracle Database Concepts有很多超鏈接都是推薦用戶進入 2 day 手冊中學習怎樣執行基於原理的任務。
2 Day 手冊頻繁的引用Oracle Database Concepts作爲操作的概念背景
Intermediate Group 中級組
從基礎組出來後,就要進入中級組了。這組的手冊都以 2 day + 開頭,因爲它們是2 day手冊的擴展。這些手冊是在基礎手冊的主題上更加的深入,或者一些特殊有趣的主題。
2 Day +的手冊也分爲DBA(Administrator) 和 數據庫開發兩組人
Table 1-1Intermediate Group: 2 Day + Guides
Database Administrators |
Database Developers |
Oracle Database 2 Day + Performance Tuning Guide |
Oracle Database 2 Day + Application Express Developer's Guide |
Oracle Database 2 Day + Real Application Clusters Guide |
Oracle Database 2 Day + Java Developer's Guide |
Oracle Database 2 Day + Data Warehousing Guide |
Oracle Database 2 Day + .NET Developer's Guide for Microsoft Windows |
Oracle Database 2 Day + Data Replication and Integration Guide |
Oracle Database 2 Day + PHP Developer's Guide |
Oracle Database 2 Day + Security Guide |
|
Advanced Group 高級組
從中級組出來以後,就要進入高級組了.這些手冊意在服務於專家用戶。如果專家用戶需要比2 Day + 能提供的信息更加細節的東西,或者特別的一些主題。
在高級組中必須參考的有:
·Oracle Database SQL Language Reference
這本手冊是Oracle SQL相關信息的權威來源
·Oracle Database Reference
這手冊是初始化參數,數據字典,動態性能視圖相關信息的權威來源。
高級手冊實在太多,不一一列出了,
下表列出的指南都是大多數DBA,數據庫開發都偶爾查看的。
Database Administrators |
Database Developers |
Oracle Database Administrator's Guide |
Oracle Database Advanced Application Developer's Guide |
Oracle Database Performance Tuning Guide |
Oracle Database PL/SQL Language Reference |
Oracle Database Backup and Recovery User's Guide |
Oracle Database PL/SQL Packages and Types Reference |
Oracle Real Application Clusters Administration and Deployment Guide |
|
其他高級指南,都是特定用戶根據自己的責任範圍的特定需求。比如:一個安全職員自然要參看Oracle Database Security Guide。
---------------------------------------------------------------------------------------
勤學如春起之苗,不見其增日有所長。輟學如磨刀之石,不見其損日有所虧
Email: orahank.dai@gmail.com
QQ: 88285879