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