回覆列表
-
1 # Thehebe
-
2 # 話入神機
這裡,我從工作方向的角度提供一些參考建議:
從工作方向進行區分,可以分為部署實施DBA,備份恢復DBA,架構DBA,最佳化DBA,自動化運維DBA,高可用DBA,應該根據未來的方向去選擇深入學習的內容。
即便是現在頂級的Oracle ACED也是分方向的,有的選擇最佳化方向,有的選擇備份恢復方向,很難有一個DBA能精通多個方向的知識,畢竟經歷有限。你去問備份恢復方向的ACED部署實施方面的知識,沒準你比他更牛逼。
在工作技能方面,比如有個DBA說他會裝資料庫,那麼問題來了,Oracle 10g,11g,12c,18c的單機和RAC都會部署了嗎,ASM和檔案系統都會部署了嗎,Linux,UNIX,Solaries,AIX作業系統都會部署了嗎,資料庫升級會做了嗎,打補丁會做了嗎,會安裝GI,DG,OGG嗎,幾十個節點的叢集裝過嗎,會處理安裝ORACLE過程遇到的各種問題嗎……
學習知識講究深度和廣度,各個方面都有所涉獵。如果工作去了一家有大牛鎮場子的公司工作,那麼恭喜你,你有很多前人的經驗可以借鑑,這些可以讓你水平提升一個臺階。如果你是唯一的DBA,那麼也恭喜你,你有一個大平臺供你展示自我,邊學習邊實踐。但是,這裡建議選擇一個方向,深入研究,同時對其他方面的知識有所涉獵。
這裡提一個非常重要的技巧,閱讀官方文件的能力。官方文件是Oracle公司面向全球使用者提供的最通俗、最全面、也最專業的資料,參照官方文件進行操作和實踐,肯定不會出問題。(Oracle官方文件docs.oracle.com是非常不錯的資料,裡面可以看到2日DBA教程等,快速入門Oracle)
十年磨一劍,希望您能堅持不懈,一日學習一個知識點,練就絕世神功,笑傲Oracle DBA的技術江湖。
在實際工作中,自己的思路是這樣的:
1、勝任基本崗位:
掌握Oracle的基本知識,可以應對日常工作(掌握資料庫的基本結構,掌握資料庫在Linux、Windows、AIX等不同作業系統下的安裝配置、起停、Oracle資料庫的備份、恢復、克隆、跨平臺遷移、補丁)
2、進一步提升階段:
2.1 在應對DBA崗位基本要求之後,需要掌握oracle效能最佳化工具(AWR/ASH/ADDM)這些報表。能夠做到透過不同報表去預防及解決oracle的效能問題。
2.2 能夠自己寫一些監控指令碼,方便快速監控資料庫的各項效能指標。
2.3 熟悉作業系統的知識(如linux的vmstat、iostat等命令)、伺服器基本知識(CPU核數與SQL語句併發執行的關係、記憶體與SGA、PGA的關係、磁碟(機械盤、SSD、PCIE-flash卡)的區別)、光纖交換機效能、尾纖、儲存等等知識,這些知識便於後期最佳化。
3、架構轉變:
循序漸進,基本技能提升到一定程度之後,需要考慮資料庫架構的穩定性,單例項雖然滿足了最基本的業務需求,但是隨著業務重要性的提升,每次資料庫的異常宕機容易造成較大成本的損失。這個時候需要掌握Oracle資料庫的高可用知識(RAC、 DATAGUARD、Oracle Golden Gate )
4、全域性意識:
4.1 以上都掌握差不多了,隨著掌握的資料庫越來越多(如果超過10個),以前簡單的親力親為的巡查資料庫的效能等方式已經跟不上了,這個時候要考慮統一監控、統一報警的問題,做到事半功倍。
4.3 前瞻性,要對集團的資料庫業務做好規劃管理,保證所有的資料庫儘量統一規劃,統一設計,後期維護以及為資料庫的自動化運維做好鋪墊。
以上是自己實際工作中的一點體驗,附上一張大牛們繪製的思維導圖供參考: