DBA的性格(轉自老白的dba優化手記)

lygle發表於2013-03-29

不一定任何人都需要從事DBA這個工作,DBA是一種壓力相對比較大的職業,並且要求從業人員在工作期間不斷的學習新的技術。Oracle資料庫每5年左右會進行大版本升級,這就需要DBA不斷的學習新的知識。記得幾年前在做一個專案的時候,和一個幹了七八年的老DBA一起聊天,他說本來想好了,9i的技術就不去學習了,就吃8i的老本了,不過沒辦法,想要生存,必須去學習。最後他說他的最大願望是不要再去學10g 的東西了。不過願望只是願望,2年後,我看到他出差的時候帶著一本10g 的書,就說起了那次對話。他也只能笑著說,幹DBA的都是苦命人,不學習是不可能的。DBA這個職業可以做的很長,國外一些高手和大師都是從事DBA工作超過20年的。不過對於絕大多數朋友來手,DBA只是職業生涯中的一個臺階而已,因此在做職業規劃的時候,首先你需要考慮DBA是作為一種過渡性的工作呢,還是作為一種生活和愛好。

這就需要根據自身的性格來考慮了,有幾種性格是不適合做DBA的。DBA需要謹慎的態度,如果你的性格比較急躁,那麼DBA不是適合你的工作。DBA承擔了企業中最為重要的資料庫的維護,其工作性質決定了DBA是一種壓力十分大的職業,在處理日常工作以及突發性問題的時候,急躁是最為可怕的性格,越是碰到緊急的問題,越需要DBA以冷靜的心態來面對,否則很容易出現不必要的問題。2004年美國的一項調查表明,超過30%的系統故障是由於維護人員人為失誤造成的,因此沉穩的性格是DBA減少出現操作失誤的一個重要保證。

除了急躁外,好奇心太強的人也不適合做DBADBA在做維護工作的時候,經常會碰到一些莫名其妙的事情,和自己工作無關的事情儘量不要做,這是鐵的紀律。 Oracle公司的工程師到客戶現場工作的時候,一般會拒絕客戶提出的和本次任務無關的工作,這也是oracle原廠服務經常被客戶詬病的一點。不過我認為這是一種很職業的態度,我只做和我工作相關的事情。從另外一個角度來說,就是做自己技術能力範圍內的事情。有些DBA無法判斷某個操作的風險,在這種情況下,客戶讓你做某件事情,你到底是做還是不做呢?最好的方式是通過向專家諮詢,確認沒有問題後再去做。一個好奇心很強的DBA,可能發現了一個新的指令碼,就很急迫的想在自己維護的生產庫上嘗試一下,可能他根本沒有去考慮這個指令碼是否存在風險。實際上,在我這十多年的DBA工作中,也多次出現了由於好奇心強導致去做一些自己認為沒有風險的事情,結果或多或少的造成了一些問題,甚至有一次我在一個客戶的生產庫上嘗試一個以前沒有做過的DUMP命令,最終碰到了一個Oracle BUG,導致RAC的一個節點當機。從那以後,哪怕再好奇,我也會先充分評估操作的風險,並且儘可能不去做一些和自己工作無關的分析。實際上,作為一個 DBA是很難經得起誘惑的,因為有很多情況可能你一輩子也碰不上幾回,作為一個愛好ORACLE的人,碰到了某種現場,都可能會被吸引,甚至誘惑。作為 DBA,經得起誘惑,是十分好的性格。從另一個方面來說,DBA需要足夠的職業素養,由於DBA工作的風險十分高,任何一個違背職業素養的工作習慣都可能演變為工作中的失誤,因此做一個真正的職業人是十分關鍵的。

DBA 需要有決斷的性格。雖然強調DBA不能膽子太大,但是在某些情況下,DBA必須決斷。有一次客戶的資料庫出現了嚴重的問題,導致當機,啟動後沒多久再次當機,客戶也十分著急,由於時間十分緊迫,現場工程師和我們在二線做支援的人都沒有足夠的時間去進行分析,我當時感覺和我以前碰到的一個BUG十分類似,不過從CALL STACK來看,還是有些差別。當時現場工程師就不敢做這個決定,我說這種時候了,如果這個補丁不起作用,我們的服務也就做到頭了,這種情況下目前沒有別的思路,但是我們目前什麼都不做,肯定是不行的,所以立即打補丁。幸運的是,補丁打上之後,資料庫恢復正常了。決斷不僅僅是一種性格,這種情況下,決斷是基於一定的條件的,因為我知道,哪怕這個補丁不能解決問題,也是沒有副作用的。對風險的理解,是決斷的基礎。

DBA 的責任心是十分關鍵的。我面試一個DBA,首先看到的不是他的技術能力有多強,而是他的工作態度和責任心。一個有責任心的人,哪怕技術水平稍微差一點,也不容易出大問題。而一個缺乏責任心的DBA,不亞於一顆定時炸彈。能把工作當成自己的事情的人,是肯定能夠成為一個好的DBA的。在很多情況下,DBA的工作都是從紛繁的表象中去發現危險的存在,一個把工作當成苦差事的人,是很難做到這一點的。我平時很少會和同事發脾氣,唯一的一次,是因為一件小事。當時客戶的一個系統需要我們幫助做一個健康性檢查,一共有10多套大型資料庫,要在23天內完成巡檢工作。當時有三個人一起參與巡檢,採用的方式是集中採集資料,集中編寫報告的方式,這種方式一般來說我們很少採用,因為這種方式可能導致巡檢的質量下降,不過由於時間緊迫,也只能採用這種權宜之計了。在做巡檢之前,我就和哥幾個說雖然時間緊,但是一定要認真。雖然哥幾個答應的挺好,不過報告出來後,我感覺還是過於粗糙。我只好打回去讓他們整改,整改了23次還是難以讓人滿意。事後我和哥幾個說,如果你把這件事當成一個工作,確實讓一個人在這麼短時間裡做這麼多庫的巡檢,難免會有些枯燥,質量下降也是難免。不過如果你是以前的手工藝者,做巡檢就是我們的手藝,你拿出的活能不能對得起自己這點手藝呢?大家聽後都感觸頗深,既然我們吃這碗飯,那麼我們就應該拿出對得起這碗飯的手藝。現代社會比較浮躁,大家都是為了生活而工作,工作已經不是目的而只是手段,這一點我也能夠認同,不過人除了物質的東西,總還是需要一些形而上的信仰來支撐自己,否則會失去很多樂趣的。這種信仰就是手藝人賴以生存的基礎,失去了這些信仰,把DBA工作當成純粹的謀生手段,那麼你還會為了解決一個問題而興奮不已嗎?還會為了自己的失誤而感到懊悔嗎?

每一個準備做DBA這個工作的人,無論自己的職場規劃是如何的,作為DBA就應該明白自己承擔什麼樣的責任。擺在我們面前會有很多的誘惑,你面對的是企業最為寶貴的財富--資料庫。可能你幹一輩子的收入還不如把其中一小部分資料複製出去賣給別人賺的多,但是你必須守住自己的信念,你必須對得起自己,對得起自己的衣食父母。記得剛剛工作的時候,我在DEC軟體中心,幫助香港氧氣公司移植他們的核心業務系統,我負責的工作就是將香港氧氣公司的TME資料庫裡的資料移植到OPENVMSRMS系統中去。我第一次接觸資料之前,老闆讓我簽署了一個保密協議,他當時對我說,這些資料,隨便拿出一些,你就可以賣出幾十萬的價錢,但是我相信你不會這麼做,作為職場中的人,這是最起碼的道德底線,今後你可能會遇到很多類似的事情,只要你一次觸動了底線,那你就萬劫不復了。作為DBA,那根底線是絕對不能突破的,這不僅僅是道德的問題,實際上這個底線是對我們最好的保護。

一個人的性格是天生的,不過也是可以改變的,如果一個人想去做一件事情,並且不斷的在努力,成功的機會是很大的。連郭靖這種蠢笨如牛的人都可以成為一代宗師,你想成為一個DBA又有何難呢。雖然說不是所有的人都適合做DBA,不過這一切對於一個努力的人來說,都不成問題。性格是可以改變的,習慣是可以改變的,為了自己的目標,可以改變一切的人,那麼還有什麼不能實現嗎?我們公司有一個小夥子,性格極為內向,和同事在一起上班,可以一天只說12句話,甚至一句話不說。有一次去客戶現場工作了2個多月,我們給他一個額外的任務就是請客戶的DBA吃一頓飯,就是這麼一個很小的任務,他最後都沒有完成。按理說,這種性格的人,是很難成為一個合格的DBA的,因為DBA需要和別人溝通,作為DBA,三分靠技術,七分考溝通。就是這樣一個內向的人,在大家的努力下,通過一年的時間,居然有了很大的改變,首先是和自己同事之間的溝通多了起來,和客戶之間的交流也逐漸好了起來,雖然和其他工程師比較,他還是屬於沉默寡言的那一類人,不過可以看得出,他一直很努力的克服自己的瓶頸,而且我們也看到了他的努力所得到的成果,我想再有12年的時間,他會成功的。在這一節的最後,我舉這個例子,就是想說DBA的最後一個,也就是最重要的性格--堅持。大家應該都看過士兵突擊,許三多不是一個當兵的料,不夠他在戰友的幫助下,一直堅持著,最後成就了兵王。在這個故事裡,有兩個重要的要素,一個是許三多的堅持,一個是戰友的堅持。鋼七連的不拋棄,不放棄的信念是成功的關鍵。對於一個剛剛走入職場,想成為一個成功的DBA的人,這個信念尤為重要。

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

相關文章