Oracle的學習路徑與方法討論

luashin發表於2016-01-03

總結了一下大家的意見,也加了一些個人的看法,Oracle的學習路徑,可供參考:

     初級階段:可以從OCP教材開始,還有文件中的Administrator's Guide、Concepts、Performance Tuning Guide、Backup and Recovery Advanced User's Guide、Backup and Recovery Basics。特別是Administrator's Guide、Concepts、Performance Tuning Guide,要詳細閱讀。多操作,多實驗。
     中級階段:不斷的操作,加上metalink上看各類文章,自己總結。有一個很重要,到Oracle官網上,找到OCM的考試大綱,按圖索冀,逐個擊破,之於考不考OCM,另當別論。書的話,可以參考《9i&10g程式設計藝術》,《基於成本的oracle最佳化法則》,《大話叢集rac》,《ORACLE RAC日記》等等。
     高階階段:繼續看書(最佳化,特性,整合)往深度廣度學。可以以如下內容為專題,逐個鑽研:
         1、儲存格式:資料檔案格式、資料儲存格式等
         2、共享池方面:解析流程及原理,共享相關於Latch、Lock、Pin,Row cache lock原理,相關的等待事件。以及共享池記憶體分配機制。
         3、Buffer Cache部分:邏輯讀、物理讀流程及原理,相關的Latch、Pin,還有相關的等待事件。
         4、Redo:Redo的產生流程、相關Latch、等待事件。
         5、Undo:Undo的空間使用規則、提交和回滾的原理
         6、備份、恢復機制原理,學會使用BBED
         7、ASM
         8、RAC
         可以參考DSI。還有Liwes的新書Oracle Core。

 現在閒來無事,就談談Oracle的學習方法吧。
      1.初接觸Oracle,肯定會被其複雜的體系結構,眾多的概念給搞混,如process和sessions,restore和recover等等,接觸Oracle前3個月肯定會覺得這些概念非常抽象,又覺得無重下手,到處是重點,處處又把握不住,朋友,堅持吧,學習Oracle毅力很重要。
      2.通讀Oracle官方文件的concepts章節,至少需要通讀2次,英文能力一般的朋友第一次閱讀時可適當參考中文文件,因為很多術語英文很難理解。網上有很多關於concepts的中文翻譯,其中翻譯的比較出色當屬於zw1840。第二次閱讀時必須拋棄中文資料,英語閱讀再困難,也要將其啃下來,因為閱讀英文資料,一:會有自己的想法,二:好多好的Oracle資料都是英文的。
      3.學習Oracle初級階段少泡論壇,因為那裡水平參差不齊,再加上自己水平有限,判斷能力有限,他們給出的答案很多都是錯誤的,很容易形成誤導。
      4.遇到問題,先靜下來想想,自己先嚐試解決問題。
      5.學習Oracle講究一個“悟”字,即不要淺嘗輒止,遇到問題,不是解決就好了,多想想為什麼會產生這樣的問題,怎麼樣才能避免,這個問題的背後是什麼,牽扯到的知識點有哪些,等等。假如你是Oracle的設計者,你會怎麼樣設計Oracle?當自己的理念和Oracle的理念產生衝突時,99%是自己錯了,多想想這個模組Oracle為什麼要這樣實現,這樣實現會帶來什麼好處,兩者相比較,就會發現差距,不知不覺會慢慢參悟Oracle的精髓。
      6.實踐永遠重要於理論,書看的再多,而不會用sqlplus "/as sysdba"操作一系列命令,也是徒然。
      7.在形成自己有對Oracle的判斷力之前不要沉迷市面上的Oracle書籍,沉下心修煉自己的內功,更為有益。
      8.網際網路的神奇之一是產生了google這樣的好工具,查閱資料比baidu好多啦、
      9.自己研究Oracle的alert日誌會給自己帶來意想不到的成果,尤其是研究啟動過程部分
     10.千言萬語,興趣是第一位的,Oracle好像是一杯醇酒,越品越有味,不知不覺醉心於此。

選擇oracle其實在選擇時候就要做好心裡準備,要明白幾點:
      首選,學習技術本身就是一個很繁冗和單調的過程,要耐得住寂寞,還要用你腦袋去推敲
      其次,就是學習oracle的方式也是循序漸進的,沒有捷徑,不要老想著一朝一夕成大師
      還有,就是學習oracle,本身要不斷的去實驗,甚至到一定的程度你需要去模擬bug
      最後,在選擇了DBA就必須遵循一個原則,保證資料不丟失才是你最主要的責任


那麼學習oracle的路線我個人建議是:

       1.《concepts?把概念當成上大廁時候的讀物吧,讀個1-2遍,拼oracle概念,我想基本能砍出個所以然
       2.光知道概念還是不夠的,為什麼呢?!那是紙上談兵~現在大家都不喜歡紙上談兵的人,所以看這本吧《administrator's guide》或者tom的程式設計藝術,但是從我個人角度來看這個階段看程式設計藝術會吃力點
       3.看選擇開發DBA還是管理DBA,這裡大家就別噴水了,沒有人是全才,DBA也是有方向的,如果你想做一個兼職開發和管理的DBA,我覺得沒個7年的積累還有這樣的大環境(職業)是練就不了這一身功夫的,小才選擇的是管理方向,所以對於開發DBA的內容我是有點2的,但是管理上我建議還是看
這個階段直接開始看《perforence tuning guide》當然了有人帶可以開始閱讀DSI 405
       4.看書吧我估計不夠,有一些資料是混淆的,沒有很正規的被編譯成書或者官方不提供成型的文件,所以這個時候用度娘,谷狗的熟練程度也會直接影響你的成長速度,別說什麼百度DBA,谷歌DBA…只要能解決問題的DBA,就是好DBA,並不是說谷歌或者百度的DBA就是菜鳥,我還見淘寶的原廠的大師遇見問題時候百度谷歌搜尋呢,所以谷歌百度不可恥,別把學習oracle和廉恥心掛接在一起。
       5.看完以上的,我覺得你現在需要有一個oracle的產品系統的框架了,你需要好好的整理下oracle 資料庫有哪些結構,每個結構功能,深化部分的原理等都可以詳細的去琢磨,去測試,這是一個長久的過程,我覺得這個過程很鼓譟,但是也很讓我心動,因為有徵服的快感!!!有了快感你就得喊!!所以很happy

       當然了 上面只是學習的途徑,但是我覺得所以的DBA都必須熟悉掌握RMAN以及sqlplus的備份恢復技巧,一個合格的DBA必須要有災難恢復處理能力,所以建議大家學好備份和恢復,rman的教材可以看官網的《recovery 啥來著忘了自己去搜尋》,sqlplus的技巧請參考楊版主備份恢復指南有個屌絲專門搜尋了楊TK的備份恢復專輯,在itpub的資料庫上有,這是個好文件,我深愛不己,感謝屌絲還有老楊犛牛般孜孜不倦的精神.

      最後就是文件整合能力,我自問自己沒能記住所有看過的書的內容,所以我個人有個文件整理的習慣,方便需要在使用的時候去搜尋定位

文章來源:http://www.itpub.net/thread-1604124-1-1.html

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/9034054/viewspace-1970172/,如需轉載,請註明出處,否則將追究法律責任。

相關文章