《名師講壇——Oracle DBA入門與實戰經典》是一本小說式的OracleDBA入門教材。本書力求把Oracle數據庫從高雅的象牙塔中請出來,使它的“貴族”身份“平民”化,力求打造一本可輕松“讀得懂、用得上、學得會”的Oracle DBA實用教材。
《名師講壇——Oracle DBA入門與實戰經典》是Oracle數據庫管理的實用教材。雖然它幾乎涵蓋了OCP(Oracle認證專家)和OCA考試的全部內容,但重點是實際工作能力的訓練,因此本書中的每章都附有大量的例題,而且每道題都給出了答案。為了幫助讀者理解,許多概念和例題都給出了商業應用背景,而且很多例題可以不加修改或略加修改后便可應用于實際工作。
本書設計了一個虛擬人物和一個虛擬項目,利用此人求職、工作和在事業上的成長過程(包括參與和領導項目)來幫助讀者理解真正的Oracle從業人員在商業公司中的工作情況。簡而言之,本書的特點有:
1.一本小說式、可輕松閱讀的Oracle數據庫管理教材;
2.配備了36講視頻,Oracle專家向您面對面講解;
3.適合于OCP、OCA認證學習;
4.適用于Oracle 11g、10g、9i、8等多個版本;
5.給出了具體的商業應用背景,增強實戰性。
本書以最通俗的語言、最簡潔的例子、最淺顯的道理、最幽默的語言,輕松愉快地講述了日常工作中經常用到的技術,即便沒有任何基礎的讀者也能快速上手。本書作者從事技術服務與培訓十余年,了解企業和讀者需求,有豐富的實戰與教學經驗,并善于將道理簡單化,以確保讀者看得懂,學得會。源自一線的實踐經驗的結晶,讓后來者從容站在前人的肩膀上,站得更高,看得更遠!1. 專業視頻講解,似老師現場與你娓娓道來,學習過程輕松愉快,學習效率更高!2. 200多項經典認證考題與解答,對掌握Oracle DBA極有幫助,可以幫助讀者深入理解Oracle DBA。3. 備受歡迎的講師編著,有豐富的實戰和教學經驗,多次被評為“最受歡迎”的講師。4. 附贈OracleDBA教學PPT,方便讀者學習和使用。 5. 輕松幽默的職場小故事,簡單通俗的語言,即使一點不懂的人也能很快輕松步入Oracle DBA的世界。
許多想進入Oracle數據庫領域的初學者,為了能成為Oracle專業人員而投入了大量的金錢、時間和精力,但最終都是半途而廢。其實他們本來可能會成為優秀的Oracle數據庫管理員或優秀的Oracle數據庫開發人員,但錯誤的培訓理念和落后的培訓方法加之糟糕的培訓教材和平庸的教師使他們誤入了歧途,并徹底扼殺了他們在這方面的才華,摧毀了他們的自信心。不少培訓中心以應試的方式培養了一批又一批的紙上數據庫管理員和開發員。
這種現狀是整個中國IT培訓行業的悲哀。其實,教師這個職業有點像醫生,醫生把握著病人的生命,教師影響著學生的未來。一個平庸的教師或一本平庸的教材要浪費許多甚至是成千上萬個學生寶貴的資源(時間、金錢和精力),更甚者會斷送一些學生的美好未來。
培訓或學習一門手藝實際上也是一種投資(需要投入大量的時間和精力,也包括金錢)。作為一種智力投資,投資者(讀者)在投資之前,當然想知道市場的現狀和未來的走勢。智力投資,要比投資在不動產(如房地產)上靈活,因為投資者可以帶著這些無形資產走遍海角天涯。
Oracle是一個適合于大中型企業的數據庫管理系統,其市場占有率是所有數據庫管理系統中最高的,而且在可以預見的將來,它的霸主地位也是無法動搖的。它主要的用戶是銀行、電信、移動通信、航空、保險、金融、跨國公司和電子商務等。根據WTO的有關協議,從2005年起,我國在以上多數領域要逐年開放市場,并要在幾年之后開放全部市場。因此,隨著這些領域外資的大量涌入,在不遠的將來對Oracle數據庫管理員和開發人員的需求將會急劇增加。而在國外,Oracle數據庫管理員和開發人員的工資都相當高,這些公司不可能也沒有能力從國外帶來大批的Oracle從業人員。
回首二十多年的IT工作生涯感觸良多,從大學剛畢業開始,從底層的程序員做起一直到寫第一本Oracle的培訓教材為止,算起來已有整整一代人的時間了。說句時髦的話是“二十年磨一劍”;說句不好聽的話,二十多年還沒混個一官半職,還在IT工作的第一線與年輕人一起沖鋒陷陣也算夠“背”的了。
這二十多年,我最大的收獲之一就是對IT領域特別是Oracle數據庫領域的深刻領悟。雖然這種領悟對我個人可以說已經太晚了(有點像結了婚才知道怎樣談戀愛,大學畢業了才知道怎樣念大學似的),但是相信這種領悟以及我個人的一些工作經驗和教訓會幫助許多讀者少走不少彎路。這也算是我做的一件善事。我幾乎沒燒過香也沒拜過佛,幫助讀者少浪費些時間、精力及金錢也算是積點陰德吧。
IT領域是變化最快的領域,有不少學者或專家認為平均每兩到三年就有百分之五十的知識需要更新。回首二十多年的IT工作生涯,我發現許多真正核心的東西很多年都沒變過。還是以Oracle為例,從Oracle 7到現在的Oracle 11g,其體系結構甚至基本命令幾乎沒什么變化。之所以許多人認為每次升級變化都很大,是因為第一次學習時就沒有完全理解,因此每次升級時都跟學習新的一樣。所以在此再次強調:一定要把軟件最核心的內容徹底掌握,“萬變不離其宗”,這樣無論軟件怎樣變化,您都能駕輕就熟,輕松掌握。
這本書是我從二十多年曲折的IT工作經歷中提煉出來的,是以一位Oracle從業人員的視角來介紹在實際工作中所需的Oracle知識和技能。本書盡可能介紹工作中常用的和相對比較穩定的Oracle知識和技能。
現在,許多媒體上都刊登了不少莫名其妙的招聘廣告,如果有人按照廣告上的標準來要求自己,學到退休能達到招聘的要求就不錯了。但是又有不少培訓中心利用這些招聘廣告做宣傳,辦起了一個又一個的速成培訓班。因此,本書還要介紹一些Oracle行業中鮮為人知的陷阱和誤區,從而使讀者避免被那些莫名其妙的招聘廣告和一些所謂的“成功人士”的豪言壯語引入歧途。
目前多數培訓中心的Oracle數據庫管理(有的也稱為Oracle體系結構等)的培訓時間為2~4天,Oracle公司為5天,每天6小時。如果您是一個真正的初學者,想在這么短的時間內學會Oracle數據庫管理簡直是“天方夜譚”。在國外,這一部分培訓對于初學者的培訓時間一般最少為4周(對SQL部分的培訓至少為3周),而且硬件和軟件環境比我知道的任何一個國內培訓機構都好。例如,絕大多數國外培訓機構都會提供至少一個如CBT(Computer Based Training)或Oracle Simulators(模擬器)之類的多媒體模擬環境,但在國內的培訓機構中我還沒見過。盡管這樣,學生還是累得叫苦連天。
在Oracle的學習和培訓中也要堅持“科學發展觀”,即要按科學的規律來進行培訓和學習。以Oracle公司的5天培訓為例,這種培訓是為已經具有一定Oracle實際工作經驗的Oracle從業人員設計的。Oracle的這部分student guide共兩本(Oracle 8為3本),與大學的教科書的厚度相當。讀者認真想一下就能意識到,即使是小說,在那么短的時間內完全理解也不是一件容易的事,更何況是一門新興的科學了。正如OCP證書所稱呼的那樣,Oracle的OCP培訓是培訓Oracle專業人員的,即培養專才的。培養專才需要時間,根本不能速成,更不能立竿見影。專才的培養需要時間,需要好的教師、好的教材和合適的軟硬件環境。
Oracle系統在業內有“貴族系統”的美名,以其培訓和教材之昂貴、課程之難學而聞名。由于中國目前的人均收入與發達國家相比還有很大的距離,雖然許多人知道Oracle系統是一個應用很廣的優秀的數據庫管理系統,但面對如此昂貴的學費和高門檻也只得放棄學習了。
本書的目的就是把Oracle數據庫從高雅的象牙塔中帶出來,使它的“貴族”身份“平民”化,為普通人提供一套能買得起,而且容易讀懂的Oracle數據庫實用教材。
本書是Oracle數據庫管理的實用教材。雖然它幾乎覆蓋了OCP或OCA考試的全部內容,但其重點是實際工作中能力的訓練。本書的內容和例題設計由淺入深,為了消除初學者對計算機教材常有的畏懼感,本書把那些難懂而且又不常用的內容盡量放在后面章節,并刪除了個別非常難懂而且一般的Oracle工作人員都很少用到的內容。根據我多年的IT工作和教學經驗,一般在某個系統中所使用的功能是很少的,相信還不到一半。因為絕大多數難懂的操作可以通過其他操作的組合來實現。
與其他同類書籍相比,本書的第一個特點是,本書并不是一條命令一條命令地簡單介紹,而是把相關的命令有機地組合在一起來介紹。例如,在執行一條Oracle命令之前,先介紹使用什么命令來格式化顯示輸出,以使結果顯示得更加清晰;接下來,再介紹使用什么命令來查看當前數據庫的相關信息;之后,再介紹怎樣執行所學的Oracle命令;最后,還要介紹使用什么樣的方法來驗證所執行的命令是否真的成功等。與其他很多同類書籍不同,書中幾乎所有的例題都是完整的,讀者只要按照書中的例子操作,一定會得到與書中所給相同(或相似,因為每個數據庫系統的配置可能略有不同)的結果。
本書的第二個特點是,為了消除初學者對Oracle教材常有的畏懼感,本書并未追求學術上的完美,而是使用生動而簡單的生活實例來解釋復雜的計算機和數據庫概念,避免用計算機的例子來解釋計算機和數據庫的概念。
本書的第三個特點是,它是自封閉的,即讀者在閱讀此書時不需要其他的參考書(除了必備的SQL知識外,讀者可參閱我的另一本Oracle入門書——《從實踐中學習Oracle/ SQL》)。
由于以上的設計,本書對學生的計算機專業知識幾乎是沒有任何要求的。對以前培訓學生的跟蹤回訪表明,這樣的設計是合理的。
本書中多數概念和例題都給出了商業應用背景,且許多例題是以場景或故事的形式出現的,同時很多例題和它們的解決方案是企業中的數據庫管理員或數據庫開發人員在實際工作中經常遇到或可能遇到的。因此,很多例題不加修改或略加修改后便可應用于實際工作中。
現在,國內的Oracle培訓有些誤入歧途。許多參加培訓的學生認為只要交了錢,參加了培訓課程就可以學會Oracle,因為不少培訓機構就是這樣宣傳的。培訓是一個互動的過程,無論多好的老師、多好的教材都沒有辦法保證那些不學習的人掌握老師所講授的內容。科學已經證明,一個人要想掌握課堂上所學的內容,其所用的時間應該至少為1∶3,即每聽1小時課至少要用3個小時來理解和消化所聽的課程。
因此,希望讀者在學習本書之前,最好安裝上Oracle服務器并設置好實驗環境,在閱讀本書時,最好把書上的例題在計算機上做上一兩遍。這些例題是經過仔細篩選的,對讀者理解書中的文字敘述非常有幫助。本書與OCP或OCA考試的第二門(Oracle數據庫管理/體系結構)的級別相當,但重點放在訓練學習者的實際工作能力上。讀者在接近完全理解了該書的內容,再做一些模擬考試題后,通過OCP或OCA的第二門考試應該沒什么問題(Oracle 10g只考一門就可以通過OCA認證)。
本書首先教讀者設置一個與真實的生產數據庫相近的模擬環境,讀者通過對這個與真實的生產數據庫相近的數據庫的操作,可以獲得對真實的生產數據庫進行維護和管理的實際知識與技能,成為真正的數據庫管理員而不是只能說不能干的“紙上數據庫管理員”。
為了幫助讀者,特別是沒有從事過IT工作的讀者了解商業公司和Oracle從業人員的真實面貌,在書中設計了一個虛擬人物“金元寶”,利用此人的求職、工作和在事業上的成長過程來幫助讀者理解真正的Oracle從業人員在商業公司中如何工作,以及公司的Oracle數據庫系統的現狀。
現在,社會上常說的一句話是,“一個項目可以帶出一個隊伍”。在本書中也設計了一個虛擬的項目。該項目是由某報上的一篇文章引起的,這篇文章的題目是《中國婦女解放運動的先驅——潘金蓮》。最初有學者想用科學的方法證明潘金蓮到底是不是中國婦女解放運動的先驅。之后,由于民眾的熱忱空前高漲,參加討論的人越來越多,爭論也越來越激烈。因此,作為中國婦女解放運動的先驅的候選人也在不斷增加,最后該項目定名為“尋找中國婦女解放運動的先驅工程”,簡稱“先驅工程”。
從第6章開始,本書的虛擬人物“寶兒”就要為這個浩大的先驅工程創建所需的幾乎所有Oracle數據庫組件,從數據表空間、還原表空間和臨時表空間等開始,一直到創建Oracle用戶為止。寶兒還要對這些組件進行日常管理和維護。寶兒在先驅工程工作的過程,除了幫助讀者掌握相關的Oracle操作技能外,還可以幫助讀者理解Oracle從業人員在實際的項目中是如何工作的。
也許有的讀者會想:“如果我遇上像先驅工程那樣沒譜的項目,我就不干了。”其實這種想法是錯誤的。實際上,一個沒譜或失敗的項目照樣可以帶出一支好的技術隊伍,甚至帶出一批專家來。另外,在一個項目開始時又有幾個人能高瞻遠矚知道它的結局呢?一個項目的高科技含量與該項目有沒有譜無關。
本書中的人物、項目和公司等都是虛構的,因此本書中有不少虛構的故事,在這些故事中使用了不少夸張性的語言,其目的只是增加讀者的興趣。許多人認為學習Oracle數據庫管理系統是一件既枯燥又令人生畏的事,希望本書的寫法能在枯燥的Oracle學習與娛樂之間達到某種程度的平衡,從而不至于使讀者在整個學習過程中神經一直繃得很緊。
本書是我用心所寫。我個人的原則是要么不做,要做就要盡心盡力地做。一個人的精力有限,不可能什么事都做,而且做得又很好(除非在夢中)。所以在寫書時我也本著寧可不寫書,但絕不能寫爛書的原則。因為爛書可能要浪費成千上萬名讀者的寶貴時間,甚至斷送一些讀者的美好未來,寫爛書就像做假藥一樣等于是在做損。
當讀者閱讀本書時,可能會發現本書沒有指定的練習題。這是因為幾乎每一章都有很多例題,讀者只要把這些例題做上一兩遍也就達到了練習的目的。另外,本書在每章的結尾處并未給出思考題,而使用了“您應該掌握的內容”這樣的句子。之所以沒有使用“思考題”這個詞是為了避免束縛讀者的想象力。使用“您應該掌握的內容”這樣比較寬松的句子的好處是,當您思考所列出的內容時只要理解它們就可以了,至于如何解釋和回答它們已經變得不重要了。
《從實踐中學習Oracle/SQL》出版后,有些讀者發來電子郵件建議在每一章的開始以簡短的方式列出這一章的目的或重點,但經過仔細的權衡還是沒有加,主要原因是避免增加書的篇幅。如果讀者有類似的閱讀習慣,可以在讀一章之前瀏覽一下這一章的目錄和該章末尾的“您應該掌握的內容”,就可以清楚這一章要講的內容了。
如果讀者安裝和使用過Oracle系統,本書第0章的大部分內容可以不看。但是對虛擬環境的配置和虛擬人物的介紹最好看一下,這樣對理解本書的內容會有所幫助。如果您不是數據庫管理員而且時間又很緊,本書的第9章、第13~15章可以暫時不看,因為這些章所介紹的主要是數據庫管理員所需的知識和技能。
書作為一種古老的單向交流工具,它的承載能力是很有限的,因此產生二義性幾乎是不可避免的。為了減少二義性的產生,我曾把本書中許多章的初稿分別發給了多個我所執教的培訓機構的學生們,并根據他們閱讀后反饋回來的意見對相關的章節做了相應的修改。其中有些章節是全部重寫甚至重寫了幾遍。盡管做了這些努力,但也很難保證該書像武俠或愛情小說那樣容易理解,因為它畢竟不是一本消遣的書。
本書既可以作為學校或培訓機構及企業的Oracle數據庫管理課程的教材,也可作為自學教材。
本書的編寫目的有以下三個。
(1)把那些沒有計算機或Oracle背景但想加入IT產業的人帶入Oracle這個行業中來。
(2)為那些有計算機或Oracle經驗但沒受過Oracle正規培訓的人提供一套系統而完整的Oracle培訓教材。
(3)為那些非計算機人員,如管理或行政人員,了解和使用Oracle提供一套完整易學的培訓教材。
本書中的絕大多數例題都分別在Oracle 8的8.0.4和8.0.5,Oracle 8i的8.1.5和8.1.7等版本上測試過。在定稿時,所有的例題都在Oracle 9i的9.0.1或9.2版本上測試過。最后,絕大多數例題又都在Oracle 10g和Oracle 11g上重新測試過。因此對讀者所使用的Oracle版本幾乎沒什么要求。
參與本書編寫的有何明、何茜穎、王瑩、萬妍、王逸舟、牛奎奎、王威、程玉萍、萬群柱、王靜、范萍英、王潔英、劉飛、王超英、萬新秋、王莉、黃力克、萬洪英、萬節柱、萬如更、李菊、萬曉軒、趙菁、張民生、高盼、杜蘅等。在此對他們辛勤和出色的工作表示衷心的感謝。
如果讀者對本書有任何意見或要求,歡迎來信提出。E-mail為sql_minghe@yahoo.com.cn,th_press@263.net。
最后,預祝讀者能夠順利地乘上Oracle這葉方舟(也許是“賊船”)!
何 明
何明,Oracle、Linux高級講師,十余年Oracle數據庫、Linux技術服務與培訓經驗,先后為西門子、惠普、中國移動、中國網通、中信銀行、神州數碼、NEC、殼牌(Shell)、中國民航、北電網絡、天津地稅局和財政局、唐山鋼鐵集團、索貝數碼、TOM在線(香港)、北京郵政局等50余家大中型企業做過培訓。
1982年起,在國家地震局研究所從事數據處理工作,在PDP-11、VAX-780等計算機上進行Fortran、Pascal、C語言和匯編的編程工作。1991年開始在國外從事信息系統管理員和分析員的工作。1999年在新西蘭公立理工學院任兼職講師,為大學本科生講授數據庫課程。
20余年程序開發和數據庫系統管理經驗,OCP專業證書(Oracle 8,8i,9i DBA),新西蘭梅西大學商業榮譽碩士,新西蘭奧克蘭大學信息系統研究生,成都理工大學工學學士。
何茜穎,新西蘭奧克蘭大學一級榮譽研究生(信息系統),奧克蘭大學商業學士(金融、信息系統)。
從2008年開始一直從事一個金融風險管理聯機學習系統(主要開發和部署工具為Oracle Application Express)的設計與開發工作,之前曾是一個維持供應鏈管理信息系統的
何明,Oracle、Linux高級講師,十余年Oracle數據庫、Linux技術服務與培訓經驗,先后為西門子、惠普、中國移動、中國網通、中信銀行、神州數碼、NEC、殼牌(Shell)、中國民航、北電網絡、天津地稅局和財政局、唐山鋼鐵集團、索貝數碼、TOM在線(香港)、北京郵政局等50余家大中型企業做過培訓。
1982年起,在國家地震局研究所從事數據處理工作,在PDP-11、VAX-780等計算機上進行Fortran、Pascal、C語言和匯編的編程工作。1991年開始在國外從事信息系統管理員和分析員的工作。1999年在新西蘭公立理工學院任兼職講師,為大學本科生講授數據庫課程。
20余年程序開發和數據庫系統管理經驗,OCP專業證書(Oracle 8,8i,9i DBA),新西蘭梅西大學商業榮譽碩士,新西蘭奧克蘭大學信息系統研究生,成都理工大學工學學士。
何茜穎,新西蘭奧克蘭大學一級榮譽研究生(信息系統),奧克蘭大學商業學士(金融、信息系統)。
從2008年開始一直從事一個金融風險管理聯機學習系統(主要開發和部署工具為Oracle Application Express)的設計與開發工作,之前曾是一個維持供應鏈管理信息系統的主要研發人員。2005至2006年在新西蘭最大的建筑公司(Fletcher Building Products Ltd)任職,負責訂單、發票和庫存信息的處理及客戶追蹤等。
第0章 Oracle的安裝及相關配置1
( 視頻講解:30分鐘)
0.1 Oracle的安裝2
0.2 Oracle 11g中的SQL*Plus6
0.3 scott用戶及其對象維護8
0.4 虛擬環境的創建8
0.5 虛擬人物10
第1章 Oracle的體系結構12
1.1 Oracle引入復雜的體系結構的原因13
1.2 Oracle數據庫中常用的術語14
1.3 Oracle數據庫管理系統的體系結構14
1.4 Oracle服務器14
1.5 Oracle實例15
1.6 Oracle數據庫15
1.7 Oracle其他的關鍵文件15
1.8 建立與Oracle實例的連接16
1.9 各種不同的連接方式16
1.10 服務器進程17
1.11 Oracle執行SQL查詢語句的步驟18
1.12 共享池19
1.13 數據庫高速緩沖區20
1.14 內存緩沖區顧問21
1.15 重做日志緩沖區22
1.16 大池和Java池23
1.17 內存緩沖區大小的設定23
1.18 內存緩沖區信息的獲取24
1.19 重做日志寫進程及快速提交25
1.20 數據庫寫進程26
1.21 系統監督進程27
1.22 進程監督進程27
1.23 校驗(檢查)點和校驗點進程27
1.24 歸檔日志進程28
1.25 小結29
1.26 您應該掌握的內容30
第2章 數據庫管理工具31
( 視頻講解:10分鐘)
2.1 Oracle通用安裝程序32
2.2 交互式啟動Oracle Universal Installer32
2.3 非交互式啟動Oracle Universal
Installer33
2.4 Oracle數據庫配置助手33
2.5 使用Oracle數據庫配置助手創建
數據庫34
2.6 數據庫管理員用戶sys和system36
2.7 SQL*Plus命令行工具38
2.8 服務器管理程序命令行工具39
2.9 Oracle 9i企業管理器40
2.10 Oracle 10g的iSQL*Plus工具42
2.11 Oracle 10g企業管理器43
2.12 Oracle 11g企業管理器44
2.13 將SYSDBA權限授予普通用戶45
2.14 您應該掌握的內容48
第3章 Oracle實例的管理49
3.1 初始化參數文件50
3.2 靜態參數文件50
3.3 靜態參數文件的創建和例子51
3.4 動態服務器參數文件52
3.5 動態服務器參數文件的創建和參數的
瀏覽53
3.6 啟動數據庫54
3.7 將數據庫置為限制模式56
3.8 關閉數據庫58
3.9 關閉數據庫的實際例子59
3.10 如何利用診斷文件來監督實例60
3.11 Oracle 11g診斷文件63
3.12 Oracle 11g的ADRCI66
3.13 您應該掌握的內容70
第4章 數據字典和控制文件71
4.1 數據字典簡介72
4.2 數據字典中所存的信息72
4.3 數據字典的操作和使用73
4.4 數據字典視圖73
4.5 格式化數據字典視圖的輸出75
4.6 如何使用數據字典視圖77
4.7 動態性能表(視圖)79
4.8 數據字典應用實例80
4.9 控制文件的定義及引入的目的84
4.10 控制文件中所存的內容84
4.11 從控制文件中獲取信息的數據字典85
4.12 如何限定控制文件的大小85
4.13 怎樣查看控制文件的配置86
4.14 怎樣添加和移動控制文件88
4.15 控制文件的備份89
4.16 移動控制文件的實例90
4.17 您應該掌握的內容96
第5章 重做日志文件97
5.1 引入重做日志的目的98
5.2 重做日志組98
5.3 重做日志成員99
5.4 日志切換和檢查點100
5.5 獲取重做日志的信息100
5.6 添加和刪除聯機重做日志文件組102
5.7 添加和刪除聯機重做日志
成員(文件)104
5.8 清除聯機重做日志文件107
5.9 利用OMF來管理聯機重做日志文件110
5.10 聯機重做日志的配置112
5.11 重做日志配置的應用實例113
5.12 您應該掌握的內容121
第6章 表空間和數據文件的管理122
( 視頻講解:18分鐘)
6.1 Oracle引入邏輯結構的目的123
6.2 Oracle數據庫中存儲結構之間的
關系123
6.3 表空間和數據文件之間的關系及
表空間的分類124
6.4 表空間中的磁盤空間管理125
6.5 創建本地管理的表空間126
6.6 還原表空間128
6.7 臨時表空間129
6.8 默認臨時表空間131
6.9 設置表空間為脫機133
6.10 只讀表空間135
6.11 重置表空間的大小137
6.12 手工重置數據文件的大小139
6.13 移動數據文件的方法140
6.14 移動數據文件的應用實例141
6.15 刪除表空間147
6.16 利用OMF來管理表空間150
6.17 創建表空間的應用實例153
6.18 您應該掌握的內容157
第7章 存儲結構和它們之間的關系158
7.1 各種類型的段159
7.2 存儲子句的優先級161
7.3 區段161
7.4 數據庫塊162
7.5 Oracle數據塊的大小163
7.6 數據庫塊的內容和參數164
7.7 手工數據塊的管理166
7.8 自動的段空間管理168
7.9 小結170
7.10 您應該掌握的內容170
第8章 管理還原數據172
8.1 還原數據的管理方法173
8.2 Oracle使用還原段的目的173
8.3 還原段的類型176
8.4 自動還原數據管理的概念和配置176
8.5 還原表空間的創建與維護177
8.6 還原表空間之間的切換179
8.7 刪除還原表空間181
8.8 自動還原數據管理的一些參數及
應用實例181
8.9 獲得還原數據的信息185
8.10 您應該掌握的內容188
第9章 創建數據庫189
9.1 籌劃和組織數據庫優化而彈性的
體系結構190
9.2 創建數據庫的先決條件191
9.3 創建數據庫的方法193
9.4 手工創建數據庫193
9.5 創建數據庫過程中的排錯197
9.6 利用Oracle Managed Files來創建
數據庫198
9.7 您應該掌握的內容199
第10章 表管理與維護200
( 視頻講解:11分鐘)
10.1 存儲數據的方法和Oracle內置
數據類型201
10.2 ROWID202
10.3 Oracle數據行的結構204
10.4 創建普通表205
10.5 創建臨時表206
10.6 表的維護和管理208
10.7 非分區表的重組209
10.8 列的維護213
10.9 表的截斷和刪除215
10.10 高水線及直接裝入數據216
10.11 收縮段221
10.12 表壓縮225
10.13 創建表的應用實例228
10.14 您應該掌握的內容231
第11章 索引的管理與維護232
11.1 Oracle引入索引的目的233
11.2 索引的分類233
11.3 B-樹索引234
11.4 位圖索引235
11.5 B-樹索引和位圖索引的比較236
11.6 創建索引237
11.7 重建和維護索引240
11.8 標識索引的使用情況243
11.9 刪除索引245
11.10 不可見索引246
11.11 創建索引的應用實例249
11.12 您應該掌握的內容251
第12章 管理和維護數據完整性252
12.1 數據的完整性253
12.2 完整性約束的類型253
12.3 完整性約束的狀態254
12.4 完整性約束的檢驗與定義254
12.5 定義和維護約束的指導原則259
12.6 關閉(禁止)和開啟(激活)約束259
12.7 重新命名和刪除約束266
12.8 您應該掌握的內容268
第13章 用戶及系統資源和安全的
管理269
13.1 創建用戶270
13.2 數據庫模式272
13.3 改變用戶在表空間上的配額273
13.4 刪除用戶274
13.5 用戶的安全控制域275
13.6 概要文件275
13.7 利用概要文件進行資源管理276
13.8 資源限制的設置276
13.9 創建資源限制的概要文件277
13.10 口令管理279
13.11 口令驗證函數280
13.12 創建口令限制的概要文件281
13.13 修改和刪除概要文件282
13.14 創建概要文件的應用實例284
13.15 您應該掌握的內容286
第14章 管理權限288
14.1 權限的分類289
14.2 系統權限289
14.3 系統權限的限制290
14.4 授予系統權限291
14.5 回收系統權限295
14.6 對象權限298
14.7 對象權限的授權和回收299
14.8 與Select Any Table權限相關的
應用實例304
14.9 您應該掌握的內容307
第15章 管理角色308
15.1 引入角色的原因309
15.2 角色的創建309
15.3 角色的修改310
15.4 角色的授權311
15.5 建立默認角色313
15.6 激活和禁止角色317
15.7 角色的回收和刪除318
15.8 創建和使用角色指南322
15.9 Oracle預定義的角色327
15.10 用戶、概要文件、權限和角色的
應用實例329
15.11 您應該掌握的內容336
第16章 非歸檔模式下的冷備份和
恢復337
16.1 實驗環境的搭建338
16.2 數據庫的非歸檔模式和備份的術語340
16.3 冷備份(脫機備份)342
16.4 冷恢復(脫機恢復)343
16.5 脫機備份和脫機恢復的優缺點343
16.6 脫機備份的應用實例344
16.7 脫機恢復到原來位置的應用實例352
16.8 脫機恢復到非原來位置的應用
實例353
16.9 您應該掌握的內容357
第17章 數據庫的歸檔模式358
17.1 歸檔模式的特點和要求359
17.2 將數據庫設置為歸檔模式359
17.3 歸檔進程和歸檔文件目錄的設置361
17.4 歸檔文件和歸檔進程的管理與
維護367
17.5 改變成歸檔模式的應用實例371
17.6 您應該掌握的內容376
第18章 數據庫的聯機備份及備份的
自動化377
18.1 聯機備份的重要性和特點378
18.2 聯機備份步驟的演示379
18.3 聯機備份步驟的解釋382
18.4 聯機備份的其他問題384
18.5 聯機備份的應用實例385
18.6 備份操作自動化的實例388
18.7 您應該掌握的內容394
第19章 歸檔模式下的數據庫恢復395
19.1 在歸檔模式下的介質恢復396
19.2 數據庫的完全恢復396
19.3 RECOVER命令及與恢復有關的
數據字典397
19.4 RECOVER期間歸檔日志文件的
使用403
19.5 獲取SQL*Plus命令的信息和
使用方法404
19.6 數據庫完全恢復方法405
19.7 最初處于打開狀態下進行的開啟
數據庫恢復406
19.8 最初處于關閉狀態下進行的開啟
數據庫恢復407
19.9 恢復沒有備份的數據文件410
19.10 在關閉狀態下進行數據庫的
恢復411
19.11 最初在關閉狀態下進行開啟數
據庫恢復的實例411
19.12 在關閉狀態下進行數據庫
恢復的實例415
19.13 您應該掌握的內容418
第20章 數據的移動419
20.1 Oracle導出和導入應用程序420
20.2 導出應用程序的用法421
20.3 導入應用程序的用法422
20.4 導出和導入程序的應用實例423
20.5 數據泵427
20.6 不同用戶及不同表空間之間
數據的移動432
20.7 將Oracle的數據傳給其他軟件
(系統)438
20.8 將其他軟件(系統)的數據
導入Oracle443
20.9 數據泵操作的自動化451
20.10 您應該掌握的內容456
第21章 閃回技術、備份恢復與優化457
21.1 閃回已經刪除的表458
21.2 閃回錯誤的DML操作463
21.3 非當前的還原表空間的恢復468
21.4 只讀表空間和臨時表空間的恢復473
21.5 索引表空間的恢復478
21.6 加快數據表空間的恢復485
21.7 您應該掌握的內容491
第22章 設計、程序及內存的優化492
22.1 優化概述493
22.2 優化系統設計的基本原理494
22.3 以命令行方式獲取系統的設計497
22.4 優化應用程序和SQL語句的
基本原理500
22.5 以命令行方式獲取SQL語句執行
的信息504
22.6 反轉關鍵字索引507
22.7 基于函數的索引509
22.8 導出存儲程序的源代碼512
22.9 SGA內存的優化515
22.10 PGA內存的優化521
22.11 將程序常駐內存526
22.12 將數據緩存在內存529
22.13 將數據常駐內存531
22.14 將查詢的結果緩存在內存537
22.15 SGA和PGA內存的設置與它們
之間內存的轉換542
22.16 您應該掌握的內容543
第23章 I/O優化545
23.1 輸入/輸出優化概述546
23.2 表空間與輸入/輸出優化547
23.3 數據文件量的監控與診斷548
23.4 表和索引一級的優化552
23.5 刪除操作對還原段的沖擊及
解決方法555
23.6 重做日志的優化557
23.7 通過移動表和索引來減少I/O競爭的
實例559
23.8 您應該掌握的內容563
第24章 EM、iSQL*Plus和數據庫
自動管理564
( 視頻講解:17分鐘)
24.1 Oracle 10g和Oracle 11g企業管
理器簡介565
24.2 Oracle 10g和Oracle 11g數據庫自動管理簡介574
24.3 數據庫自動管理中的常用術語和
統計級別575
24.4 自動工作負荷資料檔案庫576
24.5 AWR基線578
24.6 獲取快照的信息與創建基線580
24.7 AWR報告的創建與分析582
24.8 不同時間段的AWR數據的比較586
24.9 自動數據庫診斷監視器591
24.10 您應該掌握的內容592
第25章 SQL語句追蹤與優化593
25.1 發現有問題的SQL語句及執行
計劃的概念594
25.2 利用AUTOTRACE追蹤SQL
語句595
25.3 執行計劃的應用和EXPLAIN PLAN
命令598
25.4 DBMS_XPLAN 軟件包與編譯樹
簡介600
25.5 數據字典V$SQL與編譯樹應用
實例602
25.6 位圖連接(Bitmap Join)索引605
25.7 手工設置排序區的實例610
25.8 您應該掌握的內容614
結束語615
鳴謝618
參考文獻619