如何學習Oracle
經常有一些Oracle的初學者問到這個問題,這里算是一個統一答復。
1、如果有一定的數據庫基礎,知道SQL是怎么回事,即使寫不出來簡單的SQL,但可以看動它們,你就可以跳到2。否則請先看一下數據庫基礎和SQL語言,不需要很深,更不需要去記憶那些復雜的SQL命令,這些可以留在以后邊應用邊學習、記憶。
2、要想學好ORACLE,首先要學習ORACLE的體系結構,現在你不需要深入理解它們,但要分清幾個關鍵的概念:
instance & database, memory structure , process & those files ,such as data file, control file, init parameter file etc 以及database , tablespace , data file和tablespace, segmnet, extent & block它們之間的關系。
當然還要分清undo tablespace & redo log file等,
對于很多初學者來說,能夠對這些概念有個較為清晰的認識并不是一件容易的事,而這些并非Oracle的全部。
3、2是有關ORACLE的一些基本概念,下面要學習的是一些簡單的的實際操作,就是如何去管理ORACLE數據庫,當然不是管理全部的ORACLE。在此過程中你將對SQL和ORACLE體系結構有個更深入的了解。
4、到了這一步你基本上算是初步掌握了ORACLE,下面將要根據你的方向來具體學習其它的ORACLE知識了。如果你是開發人員,則需要更多地去學習PL/SQL以及DEVELOPER,而這將是一門新的課程。如果你是一名DBA,請繼續。
5、現在你可以根據自己的實際情況,進行有選擇的學習,也就是說下面的內容沒有特別順序要求。可以選擇深入學習ORACLE的管理、備份與恢復、性能調整、網絡等。當然在學習這些知識的過程中,如果有實際的工作更好,這樣你可以在實際中成長,學會TROUBLE SHOOTING。
6、當然在學習的過程中,你可以在網站或論壇中與他人進行交流,可以看別人的一些經驗文章,也可以自己寫一些心得體會。
我說一下我學習oracle的經歷
必須對insert/update/delete/select很熟悉
這是基本的
OS
在NT上安裝OEM可以幫助你理解Oracle 的objects 的概念
熟悉對應的SQL語句
Linux上的oracle也必須要學
所以你要熟悉linux的命令
這是你提高的必經之路
架構
理解Oracle的結構
什么是instance/db/tablespace/datafile/segment/rollback segment
initSID.ora file/password file
書很多,買本,讀上3遍
數據字典
這一關好難過的
那么多數據字典,記憶起來好麻煩
不過還是要記...
不過如果你是DBA那就好多了
每天接觸這些字典
你肯定有你熟悉的數據字典
用起來也很順手
Tuning
DBA的最高境界,也是個永恒的話題
硬件
大型的數據庫肯定不在PC機上
一般的大機器都有硬件廠商的支持
你要了解一些硬件知識
如光纖通道/RAID/HA/
還有存儲
你要知道
volumn manage/AIX lvm等等
軟件
一種以上的Unix系統
solaris/AIX/HPUnix/Sco unix/Tru64 etc
OCP
OCP的資料一定是要看的
考不考由你
OCM
哈哈這個嗎...據說和CCIE差不多
國內還沒有考試,要去HK
Oracle公司
如果你能去oracle公司,那............請我吃飯吧
哈哈
如何學習Oracle-eygle的方法經驗談
很多朋友經常問起學習Oracle的方法,在這里我把寫在《Oracle數據庫性能優化》一書前面的話貼在這里,供大家參考!
-------------------------------------------------------------------------------
經常有朋友會問,應該如何學習Oracle,怎樣才能快速提高?我把自己的一點心得寫在這里,供大家參考。
其實學習任何東西都是一樣,沒有太多的捷徑可走,必須打好了堅實的基礎,才有可以在進一步學習中得到快速提高。
王國維在他的《人間詞話》中曾經概括了為學的三種境界,我在這里套用一下:
古今之成大事業、大學問者,罔不經過三種之境界。
“昨夜西風凋碧樹。獨上高樓,望盡天涯路。”此第一境界也。
“衣帶漸寬終不悔,為伊消得人憔悴。”此第二境界也。
“眾里尋他千百度,驀然回首,那人卻在燈火闌珊處。”此第三境界也。
學習Oracle,這也是你必須經歷的三種境界。
第一層境界是說,學習的路是漫漫的,你必須做好充分的思想準備,如果半途而廢還不如不要開始。
這里,注意一個"盡"字,在開始學習的過程中,你必須充分閱讀Oracle的基礎文檔,概念手冊、管理手冊、備份恢復手冊等(這些你都可以在http://tahiti.oracle.com 上找到);OCP認證的教材也值得仔細閱讀。打好基礎之后你才具備了進一步提升的能力,萬丈高樓都是由地而起。
第二層境界是說,盡管經歷挫折、打擊、灰心、沮喪,也都要堅持不放棄,具備了基礎知識之后,你可以對自己感興趣或者工作中遇到的問題進行深入的思考,由淺入深從來都不是輕而易舉的,甚至很多時候你會感到自己停滯不前了,但是不要動搖,學習及理解上的突破也需要時間。
第三次境界是說,經歷了那么多努力以后,你會發現,那苦苦思考的問題,那百思不得其解的算法原理,原來答案就在手邊,你的思路豁然開朗,宛如撥云見月。這個時候,學習對你來說,不再是個難題,也許是種享受,也許成為藝術。
所以如果你想問我如何速成,那我是沒有答案的。
不經一番寒徹骨,哪得梅花撲鼻香。
當然這三種境界在實際中也許是交叉的,在不斷的學習中,不斷有驀然回首的收獲。
我自己在學習的過程中,經常是采用"由點及面法"。
當遇到一個問題后,一定是深入下去,窮究根本,這樣你會發現,一個簡單的問題也必定會帶起一大片的知識點,如果你能對很多問題進行深入思考和研究,那么在深處,你會發現,這些面逐漸接合,慢慢的延伸到oracle的所有層面,逐漸的你就能融會貫通。這時候,你會主動的去嘗試全面學習Oracle,掃除你的知識盲點,學習已經成為一種需要。
由實踐觸發的學習才最有針對性,才更能讓你深入的理解書本上的知識,正所謂:“紙上得來終覺淺,絕知此事要躬行”。實踐的經驗于我們是至為寶貴的。
如果說有,那么這,就是我的捷徑。
想想自己,經常是"每有所獲,便欣然忘食",興趣才是我們最好的老師。
Oracle的優化是一門學問,也是一門藝術,理解透徹了,你會知道,優化不過是在各種條件之下做出的均衡與折中。
內存、外存;CPU、IO...對這一切你都需要有充分的認識和相當的了解,管理數據庫所需要的知識并不單純。
作為一個數據庫管理人員,你需要做的就是能夠根據自己的知識以及經驗在各種復雜情況下做出快速正確的判斷。當問題出現時,你需要知道使用怎樣的手段發現問題的根本;找到問題之后,你需要運用你的知識找到解決問題的方法。
這當然并不容易,舉重若輕還是舉輕若重,取決于你具備怎樣的基礎以及經驗積累。
在網絡上,Howard J. Rogers最近創造了一個新詞組:Voodoo Tuning,用以形容那些沒有及時更新自己的知識技能的所謂的Oracle技術專家。由于知識的陳舊或者理解的膚淺,他們提供的很多調整建議是錯誤的、容易使人誤解的,甚至是荒誕的。他們提供的某些建議在有些情況下也許是正確的,如果你愿意回到Oracle5版或者6版的年代;但是這些建議在Oracle7.0,8.0 或者 Oracle8i以后往往是完全錯誤的。
后來基于類似問題觸發了互聯網內Oracle頂級高手的一系列深入討論,TOM、Jonathan Lewis、HJR等人都參與其中,在我的網站上( www.eygle.com )上對這些內容及相關鏈接作了簡要介紹,有興趣的可以參考。
HJR給我們提了很好的一個提示:對你所需要調整的內容,你必須具有充分的認識,否則你做出的判斷就有可能是錯誤的。
這也是我想給自己和大家的一個建議:學習和研究Oracle,嚴謹和認真必不可少。
當然你還需要勤奮,我所熟悉的在Oracle領域有所成就的技術人員,他們共同的特點就是勤奮。
如果你覺得掌握的東西沒有別人多,那么也許就是因為,你不如別人勤奮。
要是你覺得這一切過于復雜了,那我還有一句簡單的話送給大家:不積跬步,無以至千里。學習正是在逐漸積累過程中的提高。
現在Itpub給我們提供了很好的交流場所,很多問題都可以在這里找到答案,互相討論,互相學習。這是我們的幸運,我也因此非常感謝這個網絡時代。
Itpub的第二本書即將出版,謹以此祝愿Itpub越來越好,也愿我們的書能給大家帶來知識和幫助。
- Eygle 2005-03-09 于北京
posted on 2008-06-09 11:42
譚明 閱讀(192)
評論(0) 編輯 收藏 所屬分類:
Oracle