天天看點

看來,你想成為一名DBA……

Robert G. Freeman,Oracle顧問,曾編寫了幾本著作,包括《便攜式的資料庫管理者:Oracle》和《Oracle資料庫10g 新特性》,了解作為Oracle資料庫管理者涉及的方方面面。在下個月的IOUG

Live! 2005會議上,Freeman将會與作為新人,或者正在考慮成為新人的你分享他17年的經驗,以下是SearchOracle.com對他的采訪。

  我們有些人想要成為資料庫管理者。你能告訴這些人應該從哪裡開始嗎?

  RGF:要進入這個領域比較困難。因為資料庫管理者需要對一項至關重要的公司資産——資料負責,他們傾向于挑選那些有一定程度經驗的人。然而,在另一方面來看,還有一些要求似乎要超過對經驗的需要。在這種情況下,那些初級資料庫管理者就有機會了。

  通常,即使是初級資料庫管理者也都有一些IT經驗,不論是作為開發人員還是系統管理者。那麼,對于新人來說,就要找到這樣的一個位置來邁出第一步。如果你已經在一家使用Oracle的公司任職,那麼就開始在你的公司内部尋找機會吧。例如,如果你知道你們公司将要開始一項與Oracle相關的大型開發項目,那麼你就可以毛遂自薦到那個項目組去工作了。

  自我學習也是一個良好的開端。使用者事件,例如我的“university session at IOUG-A for beginning DBAs”,還有其他一些教育課程(例如Burleson

Consulting的課程),以及閱讀都會幫助你找到一份Oracle資料庫管理者的工作。

  公司在考慮接受一個人承擔資料庫管理者角色之前,所需要的基本背景是什麼?

  RGF:對于一個新的職位,如果你以前沒有兩年的工作經驗,那麼将會有困難。此外,通常要求至少5年的IT經驗。對于比較新的資料庫管理者,如果你在缺乏經驗的前提下把自己推銷出去,那麼OCP認證是必需的。幾年以前,我知道至少有兩個具有IT學位的資料庫管理者毫無Oracle工作經驗,隻有很少的IT經驗,但是擁有OCP。但是在今天這個年代我不認為你會看到這樣的情況。

  還有一些需要考慮的事情是,許多公司都已經雇用了有經驗的資料庫管理者,是以他們也許正在尋找拿較低薪水的初級的管理者,來做一些基本的監控等工作。通常這些公司會從内部雇傭。這也是那些想成為資料庫管理者的人們期待的一種機會。短期的薪水不是最好的,你能獲得的經驗才會最終帶給你獲得資深的資料庫管理者所要求的薪資的機會。

  認證值得新入門的資料庫管理者去努力嗎?

  RGF:我認為它沒有壞處,它也是一項很好的練習。有一些人認為它是無意義的,隻是一項記憶的練習。最終,它會強迫你收集一些有關Oracle的資訊,并且你會學到一些東西。它不能替代經驗,但是總好過什麼都沒有。

  學習管理Oracle資料庫的最好的方式是什麼?

  RGF:學習如何管理Oracle資料庫的最好的方式是:

  1、找一位導師,他了解Oracle,并且知道如何指導别人。我在一開始應用Oracle 的時候,有一位非常好的導師,他讓情況發生了完全的改變。

  2、教育訓練是有益的,但是我建議你在參加教育訓練之前,坐下來,使用Oracle一段時間(建立一些表、一些使用者,學習一些基本的SQL)。

  3、閱讀,閱讀,閱讀大量的書。加入Oracle有關的論壇和新聞討論區,每天閱讀它們。例如,論壇有www.dba-oracle.com, www.quest-pipelines.com,

Oracle-L 和 LazyDBA,它們都會在每天的基礎上提供給你有見解的學習。

  4、使用者組會議,例如IOUG-A,,對于學習過程非常有價值。在這樣的環境中,你可以向大量的人學習有關大量的主題的内容。此外,你還可以參加課程,例如我為資料庫管理者起步設定的課程,對于學習Oracle最有幫助。

  5、最後,不要相信你聽到或者讀到的任何東西,實際上,不要相信你聽到的任何東西。Oralce沒有絕對。每個系統都是不同的,做事情都有不同的方式。不要給你的思想畫一個永遠不會改變的框,因為它不會讓你成為最好的資料庫管理者。有一些最好的實踐方案,和标準,都有一定程度的絕對性,但是對于大多數來說,它們都是可以改變的,是依賴于環境的。

  有沒有可能在不在職的情況下,學習在職的資料庫管理者任務?

  RGF:有可能學習在職的資料庫管理者任務,但是實際的問題是,在沒有機會練習的情況下,你能記住你學到的内容嗎?工作是關鍵的,因為資料庫管理者所作的很多工作都是獨立的思考,然後解決不尋常的問題。有很多的技術和不同的複雜性。這也是在嚴格的學習環境中很難獲得的經驗。

  資料庫管理者新手第一次開始使用Oracle工作的時候,最先面臨的幾個問題是什麼?

  RGF:這依賴于它們是否具有資料庫的經驗。如果沒有經驗的話,遇到的第一個問題就是,我從哪裡開始?例如使用SQL ,SQL*Plus是基本的關注點,直到你開始真正地與資料庫開始對話,那麼就沒有那麼多事情需要做了。

  如果是從前使用過SQL進行編碼的開發人員,擁有一些SQL*Plus的經驗,那麼更多遇到的問題是“我如何完成要求我做的事情?”然後就是關于如何建立使用者、表、權限的讨論,以及一些開始工作的基本資訊。

  若是資深的資料庫管理者,通常遇到的第一個問題就是,“Oracle賬戶密碼是多少,SYS密碼是多少,衛生間和可樂機在哪裡?”這就是新手和資深的資料庫管理者之間的差别。資深的資料庫管理者有時間去衛生間和可樂機。

  新手最常犯的錯誤是什麼?

  RGF:認為對于某個問題有一個答案。然而一個人經常使用的标準有多個,通常情況是,某個問題的答案依賴于這個問題。另一個常見的錯誤就是在一段時間之後認為你知道了所有的事情。當你認為你知道了所有的事情之後,就是你真正開始認識到其實你什麼都不知道的開始。經常重新思考你看問題的方式,針對業界專家提出的意見思考你的實際情況。經常問問自己,你對事務的看法是否過于封閉。在我看來,有人付錢給資料庫管理者就是讓他們思考,這需要一個開放的思維。

  新資料庫管理者開始工作之後首先要做的事情是什麼?

  RGF:

  1、立即着手。你需要學習所有東西,做所有的工作,消化所有的内容。既然你獲得了資料庫管理者的工作,現在就不是你在新椅子裡面休息、享受你的成功的時候。列出你的目标和你想要學習的内容。做一個五年計劃是個不錯的主意。

  2、傾聽!提問!參與!不要靠着椅子背等待有人要求你建立表。

  3、涉及理論的時候,不要相信你聽到或者讀到的任何東西,除非你已經自己試過了。在我看來,資料庫規則就是任何時候都不要照搬書本。

  4、如果你獨自負責資料庫,做非常把握的事情,在你結束第一天的工作之前,確定你的資料庫可以恢複。如果你不能找回資料庫,那麼沒有什麼其他事情比這個更重要了。

  5、記錄下所有的事情。

  6、學習使用你的權力。你是資料庫管理者,這個資料庫是你的職責。當你學習做事情的正确的方式和錯誤的方式(例如說資料庫設計),你需要提出最好的實踐方案和好的設計。如果你成功了,你可以享受成功的喜悅,如果他們沒有聽取你的意見,那麼你會獲得“我告訴你這樣”的快樂。