一(yi)般意(yi)義上的數(shu)據(ju)庫(ku)管理(li)(li)員(yuan)是一(yi)個(ge)(ge)負(fu)(fu)責管理(li)(li)和維護數(shu)據(ju)庫(ku)服(fu)務器的人,數(shu)據(ju)庫(ku)管理(li)(li)員(yuan)負(fu)(fu)責全面(mian)管理(li)(li)和控(kong)制數(shu)據(ju)庫(ku)系統,包(bao)括數(shu)據(ju)庫(ku)的安裝、監控(kong)、備份、恢復等基本(ben)工作。數(shu)據(ju)庫(ku)管理(li)(li)員(yuan)的主要職責有以(yi)下幾個(ge)(ge)方面(mian):
設(she)計(ji)數(shu)據(ju)庫(ku)設(she)計(ji),包括字(zi)段、表和(he)關鍵字(zi)段;資源在輔助存(cun)儲設(she)備(bei)上是怎樣(yang)使用(yong)的(de),怎樣(yang)增加和(he)刪除文件及記錄(lu),以及怎樣(yang)發現(xian)和(he)補救損失(shi)。
2.監(jian)視(shi)(shi)監(jian)控數(shu)據庫的(de)警告日(ri)志,定期做備(bei)份刪除。監(jian)控數(shu)據庫的(de)日(ri)常會話情(qing)況(kuang)。碎(sui)片、剩余(yu)表(biao)空(kong)間(jian)監(jian)控,及(ji)時(shi)了解表(biao)空(kong)間(jian)的(de)擴展情(qing)況(kuang)、以及(ji)剩余(yu)空(kong)間(jian)分布情(qing)況(kuang)。監(jian)視(shi)(shi)對象(xiang)的(de)修改。定期列出所有變化(hua)的(de)對象(xiang)安裝(zhuang)和(he)升級(ji)數(shu)據庫服務器(如Oracle、MicrosoftSQLserver),以及(ji)應用程序工具。數(shu)據庫設計(ji)系統(tong)存儲(chu)方案(an),并制(zhi)定未來的(de)存儲(chu)需(xu)求計(ji)劃。制(zhi)定數(shu)據庫備(bei)份計(ji)劃,災(zai)難出現時(shi)對數(shu)據庫信(xin)息進行(xing)恢復。維護適當(dang)介(jie)質上的(de)存檔或(huo)者備(bei)份數(shu)據。備(bei)份和(he)恢復數(shu)據庫。聯系數(shu)據庫系統(tong)的(de)生產廠商,跟蹤(zong)技術信(xin)息。
3.備(bei)份(fen)(fen)對數據庫的備(bei)份(fen)(fen)監控和(he)管理(li)數據庫的備(bei)份(fen)(fen)至(zhi)關重(zhong)要,對數據庫的備(bei)份(fen)(fen)策略(lve)要根據實際要求進(jin)行更改,數據的日常備(bei)份(fen)(fen)情況進(jin)行監控。
4.修改密碼:規范數(shu)(shu)據(ju)庫(ku)用(yong)戶(hu)(hu)的(de)管(guan)(guan)(guan)理(li)定(ding)期對管(guan)(guan)(guan)理(li)員(yuan)等重(zhong)要用(yong)戶(hu)(hu)密碼進行(xing)修改。對于(yu)每(mei)一個(ge)項目(mu),應(ying)(ying)該建(jian)立(li)一個(ge)用(yong)戶(hu)(hu)。DBA應(ying)(ying)該和相應(ying)(ying)的(de)項目(mu)管(guan)(guan)(guan)理(li)人(ren)員(yuan)或者是程序(xu)員(yuan)溝通,確定(ding)怎樣建(jian)立(li)相應(ying)(ying)的(de)數(shu)(shu)據(ju)庫(ku)底層模型,最后由DBA統一管(guan)(guan)(guan)理(li),建(jian)立(li)和維(wei)護。任何數(shu)(shu)據(ju)庫(ku)對象的(de)更(geng)改,應(ying)(ying)該由DBA根(gen)據(ju)需(xu)求來操(cao)作。
5.SQL語(yu)句:對SQL語(yu)句的(de)書(shu)寫規范的(de)要(yao)求一(yi)(yi)個SQL語(yu)句,如果寫得不理想,對數(shu)據(ju)庫的(de)影響是(shi)很大的(de)。所以,每一(yi)(yi)個程序員(yuan)(yuan)或相應(ying)的(de)工作人員(yuan)(yuan)在寫相應(ying)的(de)SQL語(yu)句時,應(ying)該嚴格按照《SQL書(shu)寫規范》一(yi)(yi)文,最(zui)后要(yao)有DBA檢(jian)查才(cai)可以正式運行。
6.最終用戶(hu)服(fu)務和協(xie)調(diao):數據庫(ku)管理員(yuan)規定(ding)用戶(hu)訪問權限和為(wei)不同用戶(hu)組分配資源。如果不同用戶(hu)之間互相抵觸,數據庫(ku)管理員(yuan)應(ying)該(gai)能夠協(xie)調(diao)用戶(hu)以(yi)最優化(hua)安排。
7.數據(ju)庫(ku)安全:數據(ju)庫(ku)管(guan)理員能(neng)(neng)夠(gou)為(wei)不(bu)同的數據(ju)庫(ku)管(guan)理系統用戶(hu)規定不(bu)同的訪(fang)問權限,以(yi)保(bao)護數據(ju)庫(ku)不(bu)被未經授權的訪(fang)問和破壞(huai)。例如,允許(xu)一類用戶(hu)只能(neng)(neng)檢(jian)索數據(ju),而另一類用戶(hu)可能(neng)(neng)擁(yong)有(you)更新(xin)數據(ju)和刪除記(ji)錄的權限。
但是(shi)廣義上(shang)的(de)(de)DBA職責比(bi)這個(ge)大(da)得多,需要(yao)覆蓋產品從需求設計、測(ce)(ce)試到(dao)交付(fu)上(shang)線(xian)的(de)(de)整個(ge)生命周期,在(zai)此過程中不(bu)僅(jin)要(yao)負責數據庫(ku)(ku)(ku)管理系統(tong)的(de)(de)搭建和運維(wei),更要(yao)參與(yu)到(dao)前期的(de)(de)數據庫(ku)(ku)(ku)設計,中期的(de)(de)數據庫(ku)(ku)(ku)測(ce)(ce)試和后期的(de)(de)數據庫(ku)(ku)(ku)容量管理和性能優化。
對于初創公司,DBA的工(gong)(gong)作可能由運維(wei)工(gong)(gong)程師來(lai)兼任,從申(shen)請域名開始,到(dao)服(fu)務(wu)器上架,配(pei)置網(wang)絡設備,部署(shu)操作系統,安裝數據庫,設計和部署(shu)監控,防止漏洞和攻(gong)擊等等。而大型(xing)公司對DBA工(gong)(gong)作的要求越來(lai)越高,以(yi)下從各個維(wei)度來(lai)看DBA工(gong)(gong)作的職(zhi)責(ze)。
產品生命(ming)周期(qi)維度
DBA負責了業務數據(ju)庫從設計、測試(shi)到(dao)部署交付的(de)全(quan)生(sheng)命(ming)周期管(guan)理,各(ge)個階(jie)段的(de)職責包括:
1. 產品(pin)發布前
這(zhe)個階段DBA的(de)職責(ze)是數據庫準(zhun)入(ru),主(zhu)要包括:
1)產品的業務熟(shu)悉;
2)產(chan)品(pin)數(shu)據庫設(she)計評審:包括架構的(de)合理性(xing)評估,存儲(chu)容量和性(xing)能是否(fou)滿(man)(man)足(zu)需(xu)(xu)求,是否(fou)需(xu)(xu)要緩存,是否(fou)需(xu)(xu)要冗(rong)余備份等,同時需(xu)(xu)要提供(gong)數(shu)據庫schema設(she)計的(de)合理性(xing)建議以使產(chan)品(pin)能夠(gou)滿(man)(man)足(zu)上線(xian)發布并穩定(ding)運行的(de)基(ji)本要求;
3)資源(yuan)(yuan)評估,包括所需的(de)(de)服務器資源(yuan)(yuan)、網絡資源(yuan)(yuan)以及(ji)資源(yuan)(yuan)的(de)(de)分(fen)布(bu)等,同時把(ba)關產品對資源(yuan)(yuan)預(yu)算申請的(de)(de)合理性,控制服務成本;
4)資源就位,將申(shen)請(qing)的服務器(qi)及(ji)基礎環境/域名準備就位。
2. 產品發布
這個(ge)階(jie)段DBA負責(ze)數據(ju)(ju)庫(ku)發布的(de)(de)(de)具體(ti)工作,將具體(ti)的(de)(de)(de)數據(ju)(ju)庫(ku)安裝部署(shu)和(he)初(chu)始化完成后(hou)并對(dui)外提(ti)供(gong)(gong)服(fu)務。對(dui)于已(yi)在(zai)線數據(ju)(ju)庫(ku)的(de)(de)(de)升(sheng)級也屬于發布范疇,這個(ge)時候的(de)(de)(de)產品發布一般要保障在(zai)線發布,在(zai)不中(zhong)斷對(dui)外服(fu)務的(de)(de)(de)情(qing)況下完成數據(ju)(ju)庫(ku)的(de)(de)(de)升(sheng)級。對(dui)于大型(xing)復雜的(de)(de)(de)變(bian)更也存(cun)在(zai)中(zhong)止服(fu)務發布完成后(hou)再(zai)重新提(ti)供(gong)(gong)服(fu)務的(de)(de)(de)情(qing)況,但這種情(qing)況需要DBA通過盡可(ke)能的(de)(de)(de)技術(shu)手段來避免。
3. 產品運行維(wei)護
這個(ge)階段的工作重點包(bao)括:
1)監(jian)控(kong):對數(shu)(shu)(shu)據(ju)庫(ku)服(fu)務(wu)運(yun)行(xing)(xing)的(de)(de)狀(zhuang)態進行(xing)(xing)實時(shi)的(de)(de)監(jian)控(kong),包括(kuo)數(shu)(shu)(shu)據(ju)庫(ku)會話、數(shu)(shu)(shu)據(ju)庫(ku)日志、數(shu)(shu)(shu)據(ju)文件(jian)碎(sui)片(pian)、表空間監(jian)控(kong)、用戶訪(fang)問監(jian)控(kong)等,隨時(shi)發現數(shu)(shu)(shu)據(ju)庫(ku)服(fu)務(wu)的(de)(de)運(yun)行(xing)(xing)異(yi)常(chang)和(he)資源消(xiao)耗情況(kuang);輸出重要的(de)(de)日常(chang)數(shu)(shu)(shu)據(ju)庫(ku)服(fu)務(wu)運(yun)行(xing)(xing)報表以評估數(shu)(shu)(shu)據(ju)庫(ku)服(fu)務(wu)整體運(yun)行(xing)(xing)狀(zhuang)況(kuang),發現數(shu)(shu)(shu)據(ju)庫(ku)隱患(huan);
2)備(bei)份:制(zhi)定和實施數據(ju)庫(ku)備(bei)份計劃,災難出現時對數據(ju)庫(ku)信息進行恢復,維(wei)護適當介質上的(de)存檔或者備(bei)份數據(ju)。對數據(ju)庫(ku)的(de)備(bei)份策略(lve)要根據(ju)實際要求進行更改,數據(ju)的(de)日常(chang)備(bei)份情況進行監(jian)控。
3)安全審計:為(wei)不同的數據庫管(guan)理系統(tong)用(yong)戶規定不同的訪(fang)問權限,以保護數據庫不被未經授權的訪(fang)問和破壞。例如,允許一(yi)類(lei)(lei)用(yong)戶只(zhi)能(neng)檢索數據,而(er)另一(yi)類(lei)(lei)用(yong)戶可(ke)能(neng)擁有更新數據和刪除記錄的權限。
4)故障(zhang)處理:對數(shu)據庫服(fu)務(wu)出現的任何(he)異常進行及時處理,盡可(ke)能避免問(wen)題的擴大(da)化甚至中(zhong)止服(fu)務(wu)。這之前DBA需要針對各類服(fu)務(wu)異常,如機房/網絡故障(zhang)、程序(xu)bug等問(wen)題制(zhi)定處理的預案(an),問(wen)題出現時可(ke)以自動或手(shou)動執(zhi)行預案(an)達到止損的目(mu)的。
5)容(rong)量管理(li):包括數據(ju)庫規模(mo)擴(kuo)(kuo)張后的資源評估、擴(kuo)(kuo)容(rong)、機(ji)房遷移、流量調度等規劃(hua)和具體實施。
4. 數(shu)據庫性能優化
產(chan)品對(dui)外提(ti)供服(fu)務最(zui)重要的(de)一(yi)點是(shi)用(yong)戶(hu)(hu)體驗(yan),用(yong)戶(hu)(hu)體驗(yan)中非常重要的(de)是(shi)產(chan)品的(de)可用(yong)性和響應(ying)速度(du)。而如(ru)何用(yong)最(zui)合(he)理(li)的(de)資源支(zhi)持產(chan)品提(ti)供高可用(yong)和高速度(du)的(de)用(yong)戶(hu)(hu)體驗(yan),這也(ye)是(shi)DBA的(de)重要職責。
產品的整個生命周期里數(shu)據(ju)庫管(guan)理員的職責(ze)重要而(er)廣泛,這催生了各個縱向(xiang)(xiang)的運(yun)維(wei)技術方向(xiang)(xiang),凡是(shi)關系到數(shu)據(ju)庫質量、效率、成(cheng)本(ben)、安(an)全等方面的工作,及(ji)涉及(ji)到的技術、組件,主(zhu)要包括:
數據庫(ku)監(jian)控技術:包括監(jian)控平臺(tai)的研(yan)發、應(ying)用,服務監(jian)控準確(que)性、實時(shi)性、全面性的保障。
數據庫故(gu)障管理(li):包括服(fu)務(wu)的(de)(de)故(gu)障預(yu)案(an)(an)設(she)計,預(yu)案(an)(an)的(de)(de)自動化執行,故(gu)障的(de)(de)總結并(bing)反饋到(dao)產品/系統的(de)(de)設(she)計層面進行優化以提高(gao)產品的(de)(de)穩定性。
數據(ju)庫容(rong)量(liang)管(guan)理(li):測(ce)量(liang)服務(wu)的容(rong)量(liang),規(gui)劃服務(wu)的機(ji)房建(jian)設,擴容(rong)、遷(qian)移等(deng)工作。
數(shu)據(ju)庫性(xing)(xing)能優化(hua):從各個方向,包括SQL優化(hua)、參數(shu)優化(hua)、應用優化(hua)、客(ke)戶(hu)端優化(hua)等,提高數(shu)據(ju)庫的(de)性(xing)(xing)能和響應速度,改善用戶(hu)體驗。
數據(ju)庫安全保(bao)障:包括數據(ju)庫的訪問安全、防攻擊、權限(xian)控制等(deng)。
數據庫自動部署(shu):部署(shu)平臺/工具的(de)研(yan)發(fa),及(ji)平臺/工具的(de)使(shi)用,做(zuo)到安(an)全、高效的(de)發(fa)布服(fu)務。
數(shu)據(ju)庫(ku)集群管理(li):包括(kuo)數(shu)據(ju)庫(ku)的服務器管理(li)、分布式(shi)集群管理(li)等(deng)。
數據(ju)庫(ku)(ku)模(mo)型(xing)設(she)計:包括數據(ju)庫(ku)(ku)邏輯和物理模(mo)型(xing)的設(she)計,如(ru)何實現性能最優,架(jia)構(gou)可(ke)(ke)擴展,服務可(ke)(ke)運維(wei)等。
數(shu)據庫(ku)(ku)管(guan)理員以技(ji)(ji)術為基(ji)礎,通過技(ji)(ji)術保障數(shu)據庫(ku)(ku)提供(gong)更(geng)高質量的(de)(de)(de)(de)服務(wu)。DBA工作的(de)(de)(de)(de)職責及(ji)在(zai)業(ye)務(wu)中(zhong)的(de)(de)(de)(de)位(wei)置決定(ding)了DBA需要具(ju)備更(geng)加廣博的(de)(de)(de)(de)知(zhi)識和深入的(de)(de)(de)(de)技(ji)(ji)術能(neng)力。在(zai)數(shu)據庫(ku)(ku)環(huan)境的(de)(de)(de)(de)管(guan)理與維護(hu)中(zhong),技(ji)(ji)術任務(wu)可歸結(jie)成許多(duo)不同的(de)(de)(de)(de)分(fen)類。下面列出了一名DBA應掌握(wo)的(de)(de)(de)(de)一些技(ji)(ji)術(排名不分(fen)先后(hou))。
1.理解數據備份/恢(hui)復與災難恢(hui)復
恢(hui)(hui)(hui)復(fu)已損壞的(de)(de)(de)數(shu)據(ju)(ju)庫是(shi)每一(yi)個DBA應掌握(wo)的(de)(de)(de)最重要(yao)的(de)(de)(de)技能。DBA需(xu)要(yao)完全理(li)(li)解(jie)數(shu)據(ju)(ju)庫所有可能的(de)(de)(de)備(bei)份(fen)與(yu)(yu)恢(hui)(hui)(hui)復(fu)方法(fa),以及不(bu)同備(bei)份(fen)方法(fa)與(yu)(yu)不(bu)同恢(hui)(hui)(hui)復(fu)策略的(de)(de)(de)對應關系(xi)。此(ci)外,DBA還需(xu)要(yao)與(yu)(yu)業務(wu)部門合作,一(yi)起確(que)認業務(wu)需(xu)求(qiu),明確(que)用戶能夠容忍的(de)(de)(de)數(shu)據(ju)(ju)丟失底(di)線。此(ci)外,業務(wu)用戶還需(xu)要(yao)確(que)定在(zai)系(xi)統(tong)故障情況下,他們的(de)(de)(de)業務(wu)能夠維(wei)持多(duo)長(chang)時(shi)間。理(li)(li)解(jie)這些(xie)需(xu)求(qiu)可以幫助DBA開發出一(yi)個滿足業務(wu)用戶要(yao)求(qiu)的(de)(de)(de)備(bei)份(fen)/恢(hui)(hui)(hui)復(fu)方法(fa)。一(yi)個優(you)秀的(de)(de)(de)DBA要(yao)定期測試備(bei)份(fen)與(yu)(yu)恢(hui)(hui)(hui)復(fu)流程(cheng),保(bao)證他們有能力恢(hui)(hui)(hui)復(fu)業務(wu)數(shu)據(ju)(ju),滿足企(qi)業所規(gui)定的(de)(de)(de)業務(wu)數(shu)據(ju)(ju)丟失與(yu)(yu)恢(hui)(hui)(hui)復(fu)要(yao)求(qiu)。
2.工具集的使(shi)用(yong)
所謂工(gong)(gong)具集,指(zhi)是(shi)的(de)(de)他(ta)們(men)要有一組用(yong)于執行(xing)(xing)不同DBA任(ren)(ren)務(wu)的(de)(de)腳(jiao)本(ben)。這個(ge)(ge)工(gong)(gong)具集應該(gai)包含不同的(de)(de)小代(dai)碼片(pian)段,它們(men)可以快(kuai)速診斷問(wen)題或執行(xing)(xing)一個(ge)(ge)特定的(de)(de)任(ren)(ren)務(wu)。這些工(gong)(gong)具腳(jiao)本(ben)應該(gai)按DBA的(de)(de)活動類型歸類,如備(bei)份、索引維護、性能優化、容量管理等。由于總是(shi)會(hui)執行(xing)(xing)新任(ren)(ren)務(wu)、發現新問(wen)題或找(zhao)到其他(ta)人開發的(de)(de)好用(yong)腳(jiao)本(ben),因此一個(ge)(ge)優秀(xiu)的(de)(de)DBA會(hui)不斷地給這個(ge)(ge)工(gong)(gong)具集增加新腳(jiao)本(ben)。此外(wai),他(ta)還應該(gai)了解(jie)網(wang)上(shang)哪里能夠(gou)找(zhao)到一些免費(fei)的(de)(de)工(gong)(gong)具和(he)(he)腳(jiao)本(ben)。一個(ge)(ge)好的(de)(de)DBA知道什么時(shi)候可以利用(yong)其他(ta)人編寫的(de)(de)腳(jiao)本(ben),從(cong)而節省(sheng)自己的(de)(de)時(shi)間和(he)(he)改(gai)進自己的(de)(de)工(gong)(gong)具集。
3.知(zhi)道(dao)如(ru)何快速尋找答案
數據庫(ku)每天(tian)會面(mian)(mian)臨各種(zhong)各樣(yang)故障的挑戰,從(cong)硬件到網絡,從(cong)性能(neng)壓力(li)到程序bug,DBA都要(yao)(yao)從(cong)容應(ying)對,一(yi)一(yi)排(pai)除。即使是數據庫(ku)大牛,也不可能(neng)是無所不知的,因此(ci)每個(ge)DBA一(yi)方面(mian)(mian)需(xu)要(yao)(yao)不斷修煉自(zi)己(ji),積累操作系(xi)統、網絡、硬件、存儲(chu)系(xi)統、分布式計算等(deng)理論(lun)基(ji)礎,另(ling)一(yi)方面(mian)(mian)還要(yao)(yao)有快速尋找(zhao)(zhao)(zhao)新問題解(jie)決(jue)方法的能(neng)力(li)。如(ru)果一(yi)個(ge)數據庫(ku)實(shi)例(li)不能(neng)按預期方式運(yun)轉(zhuan),那么快速尋找(zhao)(zhao)(zhao)新問題的解(jie)決(jue)方法也是一(yi)個(ge)重要(yao)(yao)能(neng)力(li)。一(yi)個(ge)好的DBA知道如(ru)何(he)快速地在網上查找(zhao)(zhao)(zhao)一(yi)個(ge)未知問題的解(jie)決(jue)方法。此(ci)外(wai),他們(men)也可能(neng)已(yi)經知道了一(yi)些(xie)非常不錯的網站,也知道業界專家會提供一(yi)些(xie)好建(jian)議(yi)(yi),同時(shi)知道什么時(shi)候應(ying)該忽(hu)略(lve)一(yi)些(xie)不好的建(jian)議(yi)(yi)。你可能(neng)想象(xiang)不到,確實(shi)有一(yi)些(xie)建(jian)議(yi)(yi)不值得參考。
4.知道如(ru)何監控和優化(hua)數據(ju)庫性能
對于(yu)任何(he)數據庫產品(pin)(pin),性(xing)能(neng)(neng)都(dou)尤(you)其重要,它會直(zhi)接影響產品(pin)(pin)的(de)響應速度和用戶體(ti)驗。對于(yu)一個(ge)DBA來說,性(xing)能(neng)(neng)優(you)(you)化一般需要占用50%的(de)工作時間,因此DBA需要知道如(ru)何(he)監(jian)控(kong)和優(you)(you)化數據性(xing)能(neng)(neng)。
以(yi)SQL Server舉例,性(xing)(xing)能(neng)(neng)是一(yi)個關(guan)鍵(jian)的問題,因此(ci)DBA需要(yao)(yao)知道(dao)如何修復故障和監(jian)控(kong)性(xing)(xing)能(neng)(neng)問題。有許多第(di)三(san)方性(xing)(xing)能(neng)(neng)監(jian)控(kong)工具可(ke)以(yi)幫助DBA優化性(xing)(xing)能(neng)(neng)。如果DBA只使用第(di)三(san)方工具,而不(bu)會使用SQL Server自(zi)帶的原(yuan)生(sheng)(sheng)工具來監(jian)控(kong)性(xing)(xing)能(neng)(neng),那么(me)相信很(hen)快就會出現問題。雖然使用第(di)三(san)方工具來監(jian)控(kong)性(xing)(xing)能(neng)(neng)也很(hen)不(bu)錯,但(dan)是DBA一(yi)定要(yao)(yao)理解(jie)SQL自(zi)帶的一(yi)些原(yuan)生(sheng)(sheng)工具,如SQL Server Profiler、Database Engine Tuning Advisor、Dynamic ManagementViews、系(xi)統/擴展的存(cun)儲過程、Extended Events等。許多第(di)三(san)方工具實際上在使用這些底層的原(yuan)生(sheng)(sheng)工具。因此(ci),理解(jie)這些自(zi)帶的原(yuan)生(sheng)(sheng)工具將有利于增強DBA使用第(di)三(san)方工具的經驗。
5.研究新版本
在技術領域中,沒有(you)什么是一(yi)(yi)成不變(bian)的(de)(de)。每隔兩三年,主流(liu)數(shu)據庫廠商都會發布一(yi)(yi)個大版(ban)本(ben)的(de)(de)更新(xin)。DBA應該(gai)緊跟新(xin)版(ban)本(ben)所作的(de)(de)修改,它(ta)們可能有(you)許多(duo)變(bian)化方(fang)法(fa),最好(hao)的(de)(de)方(fang)法(fa)是遲早(zao)介入這(zhe)個過程。測(ce)試(shi)版(ban)開放后(hou)馬上下載和安裝(zhuang),盡快掌握第一(yi)(yi)手使用經驗。一(yi)(yi)名好(hao)的(de)(de)DBA總是走(zou)在學習排頭兵,總是會第一(yi)(yi)時(shi)間安裝(zhuang)和測(ce)試(shi)新(xin)版(ban)本(ben)。這(zhe)樣他們就可以盡早(zao)理解新(xin)特性,然(ran)后(hou)提出一(yi)(yi)些合理的(de)(de)新(xin)建議,幫(bang)助組(zu)織更好(hao)地利用新(xin)版(ban)本(ben)數(shu)據庫。
6.理解代碼最佳實(shi)踐方法
DBA應該了解如何編寫高效(xiao)的(de)代碼(ma)。有(you)許(xu)多糟(zao)糕的(de)編碼(ma)實(shi)(shi)(shi)踐(jian)方(fang)法(fa)會導致拙劣的(de)性能。一名好的(de)DBA要(yao)能夠理解和識別這些糟(zao)糕的(de)編碼(ma)實(shi)(shi)(shi)踐(jian)方(fang)法(fa),知道如何修改這些爛代碼(ma),讓它(ta)們(men)變成高效(xiao)代碼(ma)。此外,他們(men)還要(yao)記錄下(xia)寫代碼(ma)的(de)最佳實(shi)(shi)(shi)踐(jian)方(fang)法(fa),并且(qie)將這些實(shi)(shi)(shi)踐(jian)方(fang)法(fa)分享給其他人。
7.持(chi)續不(bu)斷地(di)學習
數(shu)(shu)據庫(ku)及其組(zu)件涉及面(mian)非(fei)常(chang)廣。DBA很難理解一(yi)(yi)個(ge)技術的(de)方方面(mian)面(mian)。DBA需要(yao)持續(xu)學習如何管(guan)理數(shu)(shu)據庫(ku)。這(zhe)個(ge)學習過(guo)程(cheng)有很多(duo)方法(fa)。其中之一(yi)(yi)就是參(can)(can)加正(zheng)式(shi)培訓。但是,并非(fei)人人都有這(zhe)樣充裕的(de)事件和金錢,也并非(fei)人人都能夠(gou)放下手頭工(gong)作專門出去(qu)參(can)(can)加正(zheng)式(shi)的(de)培訓。但是,還(huan)有許多(duo)其他方法(fa)可以(yi)獲得(de)培訓,而且大多(duo)數(shu)(shu)還(huan)是免費(fei)的(de)。一(yi)(yi)名好的(de)DBA一(yi)(yi)定要(yao)訂(ding)閱一(yi)(yi)些定期(qi)發(fa)布數(shu)(shu)據庫(ku)新(xin)(xin)技巧和新(xin)(xin)文(wen)章的(de)社區(qu)網(wang)站。此外,他還(huan)應該加入一(yi)(yi)些用戶(hu)組(zu)織,可以(yi)在周末(mo)參(can)(can)加一(yi)(yi)些當地(di)的(de)免費(fei)沙(sha)龍活動。
8.數(shu)據庫(ku)安全性
安全(quan)性是(shi)一個熱門話(hua)題。DBA應該完全(quan)掌(zhang)握如何實現數據(ju)(ju)庫(ku)的安全(quan)訪問(wen)(wen)。他(ta)們(men)應該理(li)(li)解(jie)(jie)操作系統身份(fen)驗證(zheng)和數據(ju)(ju)庫(ku)身份(fen)驗證(zheng)的區別,以及它們(men)各自的使用場合。他(ta)們(men)應該理(li)(li)解(jie)(jie)如何使用數據(ju)(ju)庫(ku)角色來管理(li)(li)不同(tong)類型用戶(hu)的安全(quan)配置(zhi)。他(ta)們(men)應該理(li)(li)解(jie)(jie)連接數據(ju)(ju)庫(ku)的端口(kou)與(yu)協議(yi)。此外,他(ta)們(men)還應該理(li)(li)解(jie)(jie)如何加(jia)密整個數據(ju)(ju)庫(ku),或者加(jia)密一個數據(ju)(ju)庫(ku)中一個表的某一個字段,同(tong)時理(li)(li)解(jie)(jie)關(guan)于(yu)加(jia)密數據(ju)(ju)的各種(zhong)問(wen)(wen)題。
9.數據庫設計
決定(ding)數(shu)據(ju)(ju)庫性能的(de)(de)一個(ge)關鍵(jian)問題是數(shu)據(ju)(ju)庫設計(ji)。DBA需要理解(jie)關于數(shu)據(ju)(ju)庫設計(ji)的(de)(de)各(ge)個(ge)方面。他們要能夠理解(jie)設計(ji)好壞的(de)(de)區別。他們需要理解(jie)為什么使(shi)用正(zheng)確的(de)(de)外鍵(jian)約(yue)束、主鍵(jian)、檢(jian)查約(yue)束和(he)使(shi)用數(shu)據(ju)(ju)類型能夠保(bao)持(chi)數(shu)據(ju)(ju)庫的(de)(de)數(shu)據(ju)(ju)完整性和(he)實(shi)現高效的(de)(de)數(shu)據(ju)(ju)查詢(xun)與更新(xin)。
10.索引設計
數(shu)據庫索(suo)(suo)(suo)引(yin)(yin)是提(ti)高應(ying)用(yong)(yong)程(cheng)序檢索(suo)(suo)(suo)和(he)(he)更新(xin)數(shu)據速度的(de)(de)重要環節。DBA需要知(zhi)道(dao)(dao)索(suo)(suo)(suo)引(yin)(yin)的(de)(de)工(gong)作(zuo)原理(li)。他(ta)們應(ying)該(gai)知(zhi)道(dao)(dao)聚簇(cu)索(suo)(suo)(suo)引(yin)(yin)和(he)(he)非聚簇(cu)索(suo)(suo)(suo)引(yin)(yin)的(de)(de)區(qu)別,知(zhi)道(dao)(dao)這(zhe)些(xie)索(suo)(suo)(suo)引(yin)(yin)的(de)(de)物(wu)理(li)存儲方(fang)式(shi)。DBA應(ying)該(gai)知(zhi)道(dao)(dao)如何(he)在執行計(ji)(ji)劃中使用(yong)(yong)這(zhe)些(xie)索(suo)(suo)(suo)引(yin)(yin)。他(ta)們應(ying)該(gai)理(li)解如何(he)找(zhao)到(dao)索(suo)(suo)(suo)引(yin)(yin)的(de)(de)使用(yong)(yong)統(tong)計(ji)(ji)、理(li)解索(suo)(suo)(suo)引(yin)(yin)碎片(pian)及如何(he)發現丟失的(de)(de)索(suo)(suo)(suo)引(yin)(yin)。他(ta)們應(ying)該(gai)知(zhi)道(dao)(dao)如何(he)維護索(suo)(suo)(suo)引(yin)(yin),以及索(suo)(suo)(suo)引(yin)(yin)統(tong)計(ji)(ji)信(xin)息對于查詢引(yin)(yin)擎的(de)(de)重要作(zuo)用(yong)(yong)。
11.容(rong)量監控(kong)與規劃
數(shu)據(ju)庫(ku)(ku)(ku)往(wang)往(wang)要使用(yong)大(da)量(liang)(liang)(liang)(liang)的(de)(de)資源(yuan)(yuan),包括CPU、內存、I/O及磁盤空間。DBA應該(gai)理(li)解如何監控數(shu)據(ju)庫(ku)(ku)(ku)所(suo)需(xu)要的(de)(de)不(bu)同主(zhu)機資源(yuan)(yuan)的(de)(de)用(yong)量(liang)(liang)(liang)(liang)。他(ta)們應該(gai)能夠理(li)解這些資源(yuan)(yuan)在(zai)不(bu)同時間的(de)(de)使用(yong)情況,以及利用(yong)歷史(shi)使用(yong)數(shu)據(ju)來規劃未來的(de)(de)容量(liang)(liang)(liang)(liang)需(xu)求。在(zai)監控過程中,DBA應該(gai)能夠預見到容量(liang)(liang)(liang)(liang)規劃會在(zai)將來什么時候出現問題(ti),然(ran)后(hou)采取必要的(de)(de)措施保(bao)持數(shu)據(ju)庫(ku)(ku)(ku)不(bu)會因為容量(liang)(liang)(liang)(liang)限制(zhi)而(er)出現中斷。
12.數(shu)據庫(ku)許可證
不(bu)(bu)同的(de)產品(pin)有許多不(bu)(bu)同的(de)許可證授(shou)(shou)權方(fang)式(shi)。而且,同一(yi)款產品(pin)本(ben)(ben)身又有許多不(bu)(bu)同的(de)版(ban)本(ben)(ben)。DBA應該(gai)理(li)解所(suo)負責的(de)數據庫版(ban)本(ben)(ben)的(de)不(bu)(bu)同授(shou)(shou)權模(mo)式(shi)。他們應該(gai)能(neng)夠(gou)提供指導(dao)如(ru)何通過合(he)理(li)購買授(shou)(shou)權來減少(shao)數據庫總擁(yong)有成本(ben)(ben),以及如(ru)何合(he)理(li)利用授(shou)(shou)權方(fang)法來降(jiang)低未來版(ban)本(ben)(ben)的(de)升級成本(ben)(ben)。
13.盡(jin)可能實現(xian)自動化
DBA每(mei)天(tian)都需要執(zhi)(zhi)行許多的(de)(de)日(ri)常任(ren)務(wu)。其中一些(xie)任(ren)務(wu)需要每(mei)天(tian)執(zhi)(zhi)行,而另(ling)一些(xie)則每(mei)周、每(mei)月或每(mei)年(nian)執(zhi)(zhi)行。一名好(hao)的(de)(de)DBA需要理解如何高效(xiao)地安排自(zi)己的(de)(de)時(shi)間。其中一種方法是建立工作流程(cheng),這些(xie)日(ri)常任(ren)務(wu)的(de)(de)自(zi)動(dong)執(zhi)(zhi)行。通過實現日(ri)常任(ren)務(wu)的(de)(de)自(zi)動(dong)化(hua)執(zhi)(zhi)行,DBA就可以用更多的(de)(de)時(shi)間去關注于數據庫(ku)環(huan)境管理中遇(yu)到的(de)(de)嚴重問題。
DBA需要(yao)跟各種(zhong)人(ren)員打交(jiao)道,這(zhe)些人(ren)員可能是銷(xiao)售商(shang)、用戶(hu)、開發人(ren)員或者管理人(ren)員。這(zhe)說(shuo)明:DBA必須具有下(xia)面的個性特點:
自信心(xin):足夠的自信心(xin)能夠幫助(zhu)DBA在重要緊(jin)急時刻果斷(duan)下決定,而不是(shi)不知所措地(di)看(kan)著(zhu)事故發生
好(hao)(hao)(hao)奇(qi)心:幾乎(hu)所有(you)的數(shu)據庫系統都(dou)(dou)在不(bu)停地更(geng)(geng)新。但并不(bu)是所有(you)的更(geng)(geng)新都(dou)(dou)有(you)技(ji)術(shu)文(wen)檔。對于好(hao)(hao)(hao)的DBA來說(shuo),好(hao)(hao)(hao)奇(qi)心是必(bi)需的。沒有(you)好(hao)(hao)(hao)奇(qi)心和求(qiu)知欲的DBA總(zong)是等待有(you)人(ren)告訴他們(men)答案(an)。而一(yi)個求(qiu)知欲強的DBA將安裝最新版本的數(shu)據庫系統,并立即開(kai)始(shi)搜尋(xun)那(nei)些(xie)哪(na)(na)怕是細微(wei)的功(gong)能(neng)和性(xing)能(neng)上的差異和增強,從而改進自己的工(gong)作。應試時一(yi)個必(bi)然(ran)問及的問題(ti)是:你(ni)手頭有(you)哪(na)(na)些(xie)參(can)考(kao)資料?你(ni)如何使(shi)用它們(men)?毫(hao)無(wu)疑問,如果(guo)你(ni)只回(hui)答了數(shu)據庫的文(wen)檔,或者你(ni)甚至(zhi)沒有(you)讀過他們(men),你(ni)的"股票市值"將大(da)大(da)下降(jiang)。好(hao)(hao)(hao)奇(qi)心會(hui)驅使(shi)DBA們(men)理(li)解數(shu)據字典(Data Dictionary)、管理(li)工(gong)具(Tools)或者其(qi)他支持(chi)包(bao)(Packages)。
堅韌的意志力(li)和沉(chen)著的心(xin)(xin)態:DBA常(chang)(chang)常(chang)(chang)會(hui)碰到(dao)棘手的問(wen)題。尋找(zhao)答案是一(yi)個需要堅韌意志力(li)、可以經(jing)受(shou)摔打的個性特點(dian)。同時面對緊(jin)急情況時要能處亂(luan)不驚,保持平(ping)和的心(xin)(xin)態冷靜處理問(wen)題。
自(zi)(zi)我驅動:自(zi)(zi)我驅動對(dui)(dui)每個(ge)人都是很(hen)重要的(de)(de),對(dui)(dui)DBA尤其(qi)如(ru)此。DBA要能(neng)想辦法使問題出(chu)現(xian),而不是等待(dai)問題的(de)(de)出(chu)現(xian)。自(zi)(zi)驅力強的(de)(de)DBA常(chang)常(chang)設法取得或(huo)者自(zi)(zi)己寫(xie)一些(xie)必(bi)要的(de)(de)腳本(Script)來監控包括(kuo)數據表大小(Table Size)、表空間使用(Tablespace Usage)等項(xiang)目(mu),這些(xie)項(xiang)目(mu)如(ru)果被忽視(shi),他們將(jiang)遇到麻煩。應(ying)試的(de)(de)時候DBA們常(chang)常(chang)被問及在PL/SQL、SQL或(huo)者SQL*PLUS方面的(de)(de)經驗,這些(xie)問題將(jiang)把你從(cong)從(cong)來沒有編寫(xie)過(guo)自(zi)(zi)己需要的(de)(de)腳本的(de)(de)那些(xie)DBA們區分開。
良好的(de)溝通(tong)能力、具有團(tuan)隊(dui)合(he)作精(jing)神(shen):DBA的(de)工作需(xu)(xu)要(yao)跨部門、跨工種接觸很(hen)多(duo)工程師,善于溝通(tong)、團(tuan)隊(dui)協(xie)作能夠(gou)起到良好作用。很(hen)多(duo)時候,開發者、管理者、用戶,他(ta)們(men)會提出毫無道理的(de)需(xu)(xu)求,DBA們(men)需(xu)(xu)要(yao)老練地(di)引導、修正它們(men)的(de)要(yao)求,說服他(ta)們(men)。
工作認真細(xi)(xi)致,勤(qin)于思(si)考:最后說說注意(yi)細(xi)(xi)節(jie),這種性(xing)格傾向非(fei)常重(zhong)要。注意(yi)細(xi)(xi)節(jie)的(de)DBA們衣著整(zheng)潔,有自己的(de)日程安排,在應試前對應聘(pin)的(de)單位(wei)做過(guo)調查。注意(yi)細(xi)(xi)節(jie)的(de)DBA們深入了解數據庫的(de)內(nei)核,并(bing)能理(li)解視圖(tu)、表之間的(de)關系。
時間管理(li)能力:數據庫運(yun)維的工(gong)作非常(chang)繁瑣,因此(ci)需要將(jiang)碎片化的時間充分利(li)用(yong)起(qi)來。
DBA的等級(ji)(ji)并不是(shi)很(hen)嚴格的。按照對數據庫的掌握(wo)情況,我簡單(dan)地分成三個等級(ji)(ji):初級(ji)(ji)Primary、中級(ji)(ji)Intermediate和高(gao)級(ji)(ji)Senior。
初(chu)級(ji)(ji)DBA又(you)稱為DBBS,是(shi)英文Database Baby Sitter的(de)縮寫。初(chu)級(ji)(ji)DBA常常是(shi)兼(jian)職(zhi)的(de),他(ta)(ta)(ta)們往(wang)往(wang)同時(shi)(shi)是(shi)程序員或者(zhe)兼(jian)任其他(ta)(ta)(ta)的(de)工(gong)作(zuo)。初(chu)級(ji)(ji)DBA往(wang)往(wang)把個人簡(jian)(jian)(jian)歷寫得很棒,參與了很多和(he)數據庫(ku)有(you)關的(de)項目或工(gong)作(zuo)。但(dan)是(shi),這(zhe)些(xie)(xie)項目或者(zhe)工(gong)作(zuo)往(wang)往(wang)是(shi):第三(san)方軟(ruan)件供(gong)應商(shang)已經(jing)安裝并配置(zhi)了數據庫(ku),他(ta)(ta)(ta)們只(zhi)做一些(xie)(xie)監控的(de)工(gong)作(zuo)。他(ta)(ta)(ta)們能處理(li)一些(xie)(xie)簡(jian)(jian)(jian)單的(de)問(wen)題,但(dan)大(da)多數時(shi)(shi)候他(ta)(ta)(ta)們向應用(yong)軟(ruan)件供(gong)應商(shang)求救。初(chu)級(ji)(ji)DBA更喜(xi)歡(huan)圖形化的(de)數據庫(ku)管理(li)或者(zhe)監控工(gong)具(ju),他(ta)(ta)(ta)們喜(xi)歡(huan)Access這(zhe)樣的(de)桌面數據庫(ku)簡(jian)(jian)(jian)單易用(yong),并把這(zhe)些(xie)(xie)小型數據庫(ku)的(de)經(jing)驗簡(jian)(jian)(jian)單地應用(yong)到大(da)型數據庫(ku)相關的(de)工(gong)作(zuo)中(zhong)。
初級(ji)(ji)DBA是(shi)最好區(qu)分(fen)(fen)的(de)。而中(zhong)級(ji)(ji)DBA和高級(ji)(ji)DBA就不太好區(qu)分(fen)(fen)。他們(men)的(de)差(cha)別在(zai)于經(jing)驗的(de)不同和個(ge)性特點、能力方面的(de)差(cha)異(yi)。中(zhong)級(ji)(ji)DBA比較多,他們(men)可以(yi)勝(sheng)任高級(ji)(ji)DBA的(de)大部分(fen)(fen)工作,包括:
1、數據(ju)庫安裝;
2、數(shu)據(ju)庫(ku)配(pei)置和管理;
3、權限設(she)置和安(an)全(quan)管(guan)理;
4、監控和性能(neng)調節;
5、備份和恢復(fu);
6、解決一(yi)般(ban)的問題;
中(zhong)(zhong)級(ji)(ji)DBA往(wang)往(wang)從(cong)業一(yi)年左右,熟悉某種操作系統環境(jing)下的數據庫(ku)。因為對(dui)中(zhong)(zhong)級(ji)(ji)DBA來講,Windows NT和Unix是(shi)有很大差(cha)別的。中(zhong)(zhong)級(ji)(ji)DBA對(dui)SQL比較熟悉,他們(men)自己(ji)購買了幾本(ben)數據庫(ku)方面(mian)的書籍,并(bing)深入鉆研(yan)。中(zhong)(zhong)級(ji)(ji)DBA往(wang)往(wang)同時(shi)兼任數據庫(ku)程序(xu)員,他們(men)的工作對(dui)性能、穩(wen)定性、安(an)全性的追求基本(ben)上(shang)不是(shi)很高,往(wang)往(wang)配合高級(ji)(ji)DBA做(zuo)一(yi)些例行工作。
高級DBA在(zai)國內是非常少的。他(ta)(ta)們(men)能(neng)(neng)夠熟練閱讀(du)數(shu)(shu)據(ju)庫(ku)(ku)(ku)方面的英文資(zi)料,并(bing)且都熟悉(xi)很(hen)多(duo)種操作平臺(tai)(tai)下的幾種大型數(shu)(shu)據(ju)庫(ku)(ku)(ku)。他(ta)(ta)們(men)知道(dao)各種不同(tong)數(shu)(shu)據(ju)庫(ku)(ku)(ku)在(zai)不同(tong)環(huan)境下的優勢(shi)和劣(lie)勢(shi),并(bing)能(neng)(neng)在(zai)數(shu)(shu)據(ju)庫(ku)(ku)(ku)平臺(tai)(tai)和數(shu)(shu)據(ju)庫(ku)(ku)(ku)環(huan)境的選(xuan)擇方面做(zuo)出決(jue)策。他(ta)(ta)們(men)一般通曉系統架構和數(shu)(shu)據(ju)庫(ku)(ku)(ku)設計,并(bing)能(neng)(neng)對(dui)數(shu)(shu)據(ju)庫(ku)(ku)(ku)進行各種級別的優化。高級DBA一般都配有助手(shou),他(ta)(ta)們(men)更偏(pian)向做(zuo)決(jue)策和計劃。高級DBA往往在(zai)銀(yin)行業(ye)、保險業(ye)、在(zai)線交易(yi)等對(dui)穩定性(xing)、安全性(xing)、性(xing)能(neng)(neng)都要求比較高的關(guan)鍵(jian)業(ye)務(wu)處理領域大顯身(shen)手(shou)。
很(hen)多時候,是否取得數據庫專家認(ren)證證書并不是很(hen)重要(yao)。很(hen)多數據庫廠商(shang)(shang)的培訓只要(yao)你去了都會獲(huo)得證書。有很(hen)多的公司提(ti)供商(shang)(shang)業化的培訓,他們的服務質量也(ye)有好有劣(lie)。所以證書并不是特別地有意(yi)義。
1. 薪酬競爭力
1)影響因素:經(jing)驗和能力(li)決(jue)定(ding)DBA的(de)等級,熟悉的(de)數據庫系統決(jue)定(ding)DBA的(de)領域,個性特(te)點和潛力(li)決(jue)定(ding)你的(de)升值空間。
2)縱向(xiang)對比:DBA作為(wei)專(zhuan)項領(ling)域的高質量人才,薪酬競爭力較(jiao)高,市場需(xu)求(qiu)旺(wang)盛,尤其是中(zhong)高階DBA,往往緊缺程度(du)高于(yu)軟件研發(fa)工(gong)程師。
3)第三方薪酬(chou)調查報告,僅供參(can)考:
《2013年數據庫工程師薪(xin)酬(chou)調查(cha)報告》
《Database Administrator Salary》
2. 市場需求
1)數據庫運維(wei)行業的市場(chang)價值(zhi):參考ITOM(IT Operation Management) 2013年的市場(chang)規模(mo)是190億美金
2)人(ren)員(yuan)需求:由(you)于業務規模較大,中(zhong)大型公(gong)司比(bi)(bi)較緊(jin)缺(que)中(zhong)高(gao)階(jie)DBA,而初(chu)創公(gong)司由(you)于其新生的業務特(te)點,比(bi)(bi)較緊(jin)缺(que)初(chu)級和中(zhong)級DBA。
數(shu)據(ju)庫作為(wei)整個系統的(de)(de)(de)(de)(de)一(yi)部分,它(ta)的(de)(de)(de)(de)(de)表現直接受服(fu)務器、操作系統、存儲、網絡、應用程序中SQL語(yu)句的(de)(de)(de)(de)(de)質量(liang)、數(shu)據(ju)庫設計的(de)(de)(de)(de)(de)質量(liang)、以及其(qi)它(ta)諸多因(yin)素的(de)(de)(de)(de)(de)影(ying)響,這(zhe)些因(yin)素加在一(yi)起非常復雜,經(jing)驗起著(zhu)非常重要的(de)(de)(de)(de)(de)作用。因(yin)此一(yi)個好的(de)(de)(de)(de)(de)DBA除了(le)知識作為(wei)基(ji)礎,經(jing)驗的(de)(de)(de)(de)(de)多寡、見識的(de)(de)(de)(de)(de)薄廣,往(wang)往(wang)決定(ding)了(le)是否合格與優秀。
優秀的(de)(de)DBA不僅關心自己(ji)運維的(de)(de)數(shu)(shu)據(ju)庫(ku)(ku)(ku)系統(tong)的(de)(de)原(yuan)理和發展,而(er)且(qie)緊(jin)跟業界(jie)數(shu)(shu)據(ju)庫(ku)(ku)(ku)前沿技術(shu),并關注數(shu)(shu)據(ju)庫(ku)(ku)(ku)領域的(de)(de)頂級會議。其中包括國際著名的(de)(de)數(shu)(shu)據(ju)庫(ku)(ku)(ku)三大會議SIGMOD、VLDB、ICDE,還有知名數(shu)(shu)據(ju)庫(ku)(ku)(ku)公司Percona主辦(ban)的(de)(de)Percona Live和Oracle主辦(ban)的(de)(de)Open World,以及國內(nei)知名的(de)(de)DBA盛(sheng)會中國數(shu)(shu)據(ju)庫(ku)(ku)(ku)技術(shu)大會(DTCC)等(deng)。
從(cong)(cong)另(ling)外一個角度說,DBA工作領域對實踐經(jing)(jing)驗和(he)獨立(li)工作能力要求較高,沒有經(jing)(jing)過大量的動手(shou)實踐是很難(nan)勝任DBA相關工作的。正是由于上述原因,其職場現狀是DBA職位(wei)不易進入,而用人單位(wei)很難(nan)找到合適的從(cong)(cong)業人員,人員缺口非(fei)常大。
也正(zheng)是由于(yu)上述原(yuan)因(yin),隨著工作年(nian)限的(de)增(zeng)長,DBA的(de)經驗在(zai)增(zeng)加,就像醫生一樣,其價值會(hui)越(yue)(yue)來越(yue)(yue)高,可以逐步成長為資深(shen)DBA、系統架構師、信息(xi)主管(CIO)等(deng)等(deng),而不會(hui)出現許多(duo)軟(ruan)件開(kai)發(fa)從業(ye)人員在(zai)一定年(nian)齡后(hou)面臨的(de)轉行問題。
另(ling)外,從(cong)職業前景(jing)看,從(cong)事(shi)DBA有著更多(duo)的(de)(de)職場機遇(yu)。一般而言,系(xi)統(tong)中的(de)(de)軟硬件(jian)都是IBM、HP、Oracle等(deng)業界(jie)一流廠商(shang)提供的(de)(de),在與廠商(shang)談判(pan)、合作(zuo)、測試、實施、維護、優(you)化等(deng)等(deng)過程中,會(hui)產生許多(duo)極(ji)佳的(de)(de)職場機遇(yu),這一點是從(cong)事(shi)開(kai)發工(gong)作(zuo)很難(nan)比擬的(de)(de)。
從DBA的(de)工資統計(ji)數(shu)據看,隨著工作經驗的(de)積累,DBA工資的(de)增長(chang)幅度(du)會遠(yuan)大于(yu)其(qi)它的(de)計(ji)算機方向(xiang)。
從(cong)工作的(de)穩(wen)定性上看,系(xi)統的(de)復雜(za)性和(he)經驗的(de)重要性已經決定了DBA職(zhi)位的(de)不(bu)可替代性。
從(cong)知(zhi)識(shi)的(de)(de)(de)積(ji)累(lei)、更新和(he)替(ti)代角度看,數據(ju)庫的(de)(de)(de)根基始終沒(mei)變,變的(de)(de)(de)是(shi)不(bu)斷增(zeng)強的(de)(de)(de)功能和(he)不(bu)斷擴展的(de)(de)(de)應用范(fan)圍。因此,在不(bu)同時期所學的(de)(de)(de)知(zhi)識(shi)和(he)獲得的(de)(de)(de)經驗是(shi)疊加和(he)累(lei)積(ji)的(de)(de)(de)關系(xi)。
因此,DBA職(zhi)業(ye)(ye)是一個(ge)高(gao)挑戰(zhan)和高(gao)回(hui)報的(de)職(zhi)業(ye)(ye),有一定(ding)能力的(de)和聰明的(de)技術人員應該挑戰(zhan)自我,進(jin)入(ru)這個(ge)被二(er)十多年(nian)事實不斷(duan)證明的(de)越來越有前景(jing)的(de)職(zhi)業(ye)(ye)。