引導(dǎo)語:數(shù)據(jù)庫管理員是一個(gè)負(fù)責(zé)管理和維護(hù)數(shù)據(jù)庫服務(wù)器的人,我們一起來了解一些他們的崗位職責(zé)和任職條件。
職位概述
數(shù)據(jù)庫管理員(Database Administrator,簡稱DBA),是一個(gè)負(fù)責(zé)管理和維護(hù)數(shù)據(jù)庫服務(wù)器的人。數(shù)據(jù)庫管理員負(fù)責(zé)全面管理和控制數(shù)據(jù)庫系統(tǒng)。這個(gè)職位對(duì)不同的人意味著不同的意義。
數(shù)據(jù)庫管理員崗位職責(zé)
1.測(cè)試程序或數(shù)據(jù)庫,糾正錯(cuò)誤,并作出必要的修改
2.修改現(xiàn)有的數(shù)據(jù)庫和數(shù)據(jù)庫管理系統(tǒng)
3.規(guī)劃、協(xié)調(diào)和實(shí)施數(shù)據(jù)庫的安全保護(hù)措施
4.與其他工作人員協(xié)調(diào)一起開發(fā)數(shù)據(jù)庫
5.編寫數(shù)據(jù)庫的說明
6.培訓(xùn)用戶并回答相關(guān)問題
7.指定數(shù)據(jù)庫用戶的訪問級(jí)別
8.審批、調(diào)度、計(jì)劃并監(jiān)督安裝新的數(shù)據(jù)庫
9.審查項(xiàng)目的要求,估計(jì)完成項(xiàng)目所需的時(shí)間和成本
10.制定標(biāo)準(zhǔn)和準(zhǔn)則來指導(dǎo)軟件的使用和授權(quán),以保護(hù)信息
11.審查程序,更改數(shù)據(jù)庫中的管理系統(tǒng)手冊(cè)
12.開發(fā)整合不同的產(chǎn)品,以滿足不同的需求
13.開發(fā)數(shù)據(jù)模型,闡述數(shù)據(jù)庫的原理
數(shù)據(jù)庫管理員任職條件
技術(shù)是指DBA執(zhí)行一項(xiàng)任務(wù)時(shí)所需要的技能。在數(shù)據(jù)庫環(huán)境的管理與維護(hù)中,技術(shù)任務(wù)可歸結(jié)成許多不同的分類。下面列出了一名DBA應(yīng)掌握的一些技術(shù)(排名不分先后)。
1.理解數(shù)據(jù)備份/恢復(fù)與災(zāi)難恢復(fù)
恢復(fù)已損壞的數(shù)據(jù)庫是每一個(gè)DBA應(yīng)掌握的最重要的技能。DBA需要完全理解數(shù)據(jù)庫所有可能的備份與恢復(fù)方法,以及不同備份方法與不同恢復(fù)策略的對(duì)應(yīng)關(guān)系。此外,DBA還需要與業(yè)務(wù)部門合作,一起確認(rèn)業(yè)務(wù)需求,明確用戶能夠容忍的數(shù)據(jù)丟失底線。此外,業(yè)務(wù)用戶還需要確定在系統(tǒng)故障情況下,他們的業(yè)務(wù)能夠維持多長時(shí)間。理解這些需求可以幫助DBA開發(fā)出一個(gè)滿足業(yè)務(wù)用戶要求的備份/恢復(fù)方法。一個(gè)優(yōu)秀的DBA要定期測(cè)試備份與恢復(fù)流程,保證他們有能力恢復(fù)業(yè)務(wù)數(shù)據(jù),滿足企業(yè)所規(guī)定的業(yè)務(wù)數(shù)據(jù)丟失與恢復(fù)要求。
2.工具集的使用
所謂工具集,指是的他們要有一組用于執(zhí)行不同DBA任務(wù)的腳本。這個(gè)工具集應(yīng)該包含不同的小代碼片段,它們可以快速診斷問題或執(zhí)行一個(gè)特定的任務(wù)。這些工具腳本應(yīng)該按DBA的活動(dòng)類型歸類,如備份、索引維護(hù)、性能優(yōu)化、容量管理等。由于總是會(huì)執(zhí)行新任務(wù)、發(fā)現(xiàn)新問題或找到其他人開發(fā)的好用腳本,因此一個(gè)優(yōu)秀的DBA會(huì)不斷地給這個(gè)工具集增加新腳本。此外,他還應(yīng)該了解網(wǎng)上哪里能夠找到一些免費(fèi)的工具和腳本。一個(gè)好的DBA知道什么時(shí)候可以利用其他人編寫的腳本,從而節(jié)省自己的時(shí)間和改進(jìn)自己的工具集。
3.知道從哪里獲得幫助
即使是數(shù)據(jù)庫大牛,也不可能是無所不知的,每個(gè)人都有需要尋求幫助或建議的時(shí)候。而知道從何處尋找建議是很重要的。如果一個(gè)數(shù)據(jù)庫實(shí)例不能按預(yù)期方式運(yùn)轉(zhuǎn),那么快速尋找新問題的解決方法也是一個(gè)重要能力。一個(gè)好的DBA知道如何快速地在網(wǎng)上查找一個(gè)未知問題的解決方法。此外,他們也可能已經(jīng)知道了一些非常不錯(cuò)的網(wǎng)站,也知道業(yè)界專家會(huì)提供一些好建議,同時(shí)知道什么時(shí)候應(yīng)該忽略一些不好的建議。你可能想象不到,確實(shí)有一些建議不值得參考。
4.知道如何使用原生性能工具
以SQL Server舉例,性能是一個(gè)關(guān)鍵的問題,因此DBA需要知道如何修復(fù)故障和監(jiān)控性能問題,F(xiàn)在有許多第三方性能監(jiān)控工具可以幫助DBA優(yōu)化性能。如果DBA只使用第三方工具,而不會(huì)使用SQL Server自帶的原生工具來監(jiān)控性能,那么相信很快就會(huì)出現(xiàn)問題。雖然使用第三方工具來監(jiān)控性能也很不錯(cuò),但是DBA一定要理解SQL自帶的一些原生工具,如SQL Server Profiler、Database Engine Tuning Advisor、Dynamic ManagementViews、系統(tǒng)/擴(kuò)展的存儲(chǔ)過程、Extended Events等。許多第三方工具實(shí)際上在使用這些底層的原生工具。因此,理解這些自帶的原生工具將有利于增強(qiáng)DBA使用第三方工具的經(jīng)驗(yàn)。
5.研究新版本
在技術(shù)領(lǐng)域中,沒有什么是一成不變的。每隔兩三年,主流數(shù)據(jù)庫廠商都會(huì)發(fā)布一個(gè)大版本的更新。DBA應(yīng)該緊跟新版本所作的修改,它們可能有許多變化方法,最好的方法是遲早介入這個(gè)過程。測(cè)試版開放后馬上下載和安裝,盡快掌握第一手使用經(jīng)驗(yàn)。一名好的DBA總是走在學(xué)習(xí)排頭兵,總是會(huì)第一時(shí)間安裝和測(cè)試新版本。這樣他們就可以盡早理解新特性,然后提出一些合理的新建議,幫助組織更好地利用新版本數(shù)據(jù)庫。
6.理解代碼最佳實(shí)踐方法
DBA應(yīng)該了解如何編寫高效的代碼。有許多糟糕的編碼實(shí)踐方法會(huì)導(dǎo)致拙劣的性能。一名好的DBA要能夠理解和識(shí)別這些糟糕的編碼實(shí)踐方法,知道如何修改這些爛代碼,讓它們變成高效代碼。此外,他們還要記錄下寫代碼的最佳實(shí)踐方法,并且將這些實(shí)踐方法分享給其他人。
7.持續(xù)不斷地學(xué)習(xí)
數(shù)據(jù)庫及其組件涉及面非常廣。DBA很難理解一個(gè)技術(shù)的方方面面。DBA需要持續(xù)學(xué)習(xí)如何管理數(shù)據(jù)庫。這個(gè)學(xué)習(xí)過程有很多方法。其中之一就是參加正式培訓(xùn)。但是,并非人人都有這樣充裕的事件和金錢,也并非人人都能夠放下手頭工作專門出去參加正式的培訓(xùn)。但是,還有許多其他方法可以獲得培訓(xùn),而且大多數(shù)還是免費(fèi)的。一名好的DBA一定要訂閱一些定期發(fā)布數(shù)據(jù)庫新技巧和新文章的社區(qū)網(wǎng)站。此外,他還應(yīng)該加入一些用戶組織,可以在周末參加一些當(dāng)?shù)氐拿赓M(fèi)沙龍活動(dòng)。
8.數(shù)據(jù)庫安全性
在最近一段時(shí)間里,安全性是一個(gè)熱門話題。DBA應(yīng)該完全掌握如何實(shí)現(xiàn)數(shù)據(jù)庫的安全訪問。他們應(yīng)該理解操作系統(tǒng)身份驗(yàn)證和數(shù)據(jù)庫身份驗(yàn)證的區(qū)別,以及它們各自的使用場(chǎng)合。他們應(yīng)該理解如何使用數(shù)據(jù)庫角色來管理不同類型用戶的安全配置。他們應(yīng)該理解連接數(shù)據(jù)庫的端口與協(xié)議。此外,他們還應(yīng)該理解如何加密整個(gè)數(shù)據(jù)庫,或者加密一個(gè)數(shù)據(jù)庫中一個(gè)表的某一個(gè)字段,同時(shí)理解關(guān)于加密數(shù)據(jù)的各種問題。
9.數(shù)據(jù)庫設(shè)計(jì)
決定數(shù)據(jù)庫性能的一個(gè)關(guān)鍵問題是數(shù)據(jù)庫設(shè)計(jì)。DBA需要理解關(guān)于數(shù)據(jù)庫設(shè)計(jì)的各個(gè)方面。他們要能夠理解設(shè)計(jì)好壞的區(qū)別。他們需要理解為什么使用正確的外鍵約束、主鍵、檢查約束和使用數(shù)據(jù)類型能夠保持?jǐn)?shù)據(jù)庫的數(shù)據(jù)完整性和實(shí)現(xiàn)高效的數(shù)據(jù)查詢與更新。
10.索引設(shè)計(jì)
數(shù)據(jù)庫索引是提高應(yīng)用程序檢索和更新數(shù)據(jù)速度的重要環(huán)節(jié)。DBA需要知道索引的工作原理。他們應(yīng)該知道聚簇索引和非聚簇索引的區(qū)別,知道這些索引的物理存儲(chǔ)方式。DBA應(yīng)該知道如何在執(zhí)行計(jì)劃中使用這些索引。他們應(yīng)該理解如何找到索引的使用統(tǒng)計(jì)、理解索引碎片及如何發(fā)現(xiàn)丟失的索引。他們應(yīng)該知道如何維護(hù)索引,以及索引統(tǒng)計(jì)信息對(duì)于查詢引擎的重要作用。
11.容量監(jiān)控與規(guī)劃
數(shù)據(jù)庫往往要使用大量的資源,包括CPU、內(nèi)存、I/O及磁盤空間。DBA應(yīng)該理解如何監(jiān)控?cái)?shù)據(jù)庫所需要的不同主機(jī)資源的用量。他們應(yīng)該能夠理解這些資源在不同時(shí)間的使用情況,以及利用歷史使用數(shù)據(jù)來規(guī)劃未來的容量需求。在監(jiān)控過程中,DBA應(yīng)該能夠預(yù)見到容量規(guī)劃會(huì)在將來什么時(shí)候出現(xiàn)問題,然后采取必要的措施保持?jǐn)?shù)據(jù)庫不會(huì)因?yàn)槿萘肯拗贫霈F(xiàn)中斷。
12.數(shù)據(jù)庫許可證
不同的產(chǎn)品有許多不同的許可證授權(quán)方式。而且,同一款產(chǎn)品本身又有許多不同的版本。DBA應(yīng)該理解所負(fù)責(zé)的數(shù)據(jù)庫版本的不同授權(quán)模式。他們應(yīng)該能夠提供指導(dǎo)如何通過合理購買授權(quán)來減少現(xiàn)在的數(shù)據(jù)庫總擁有成本,以及如何合理利用授權(quán)方法來降低未來版本的升級(jí)成本。
13.盡可能實(shí)現(xiàn)自動(dòng)化
DBA每天都需要執(zhí)行許多的日常任務(wù)。其中一些任務(wù)需要每天執(zhí)行,而另一些則每周、每月或每年執(zhí)行。一名好的DBA需要理解如何高效地安排自己的時(shí)間。其中一種方法是建立工作流程,這些日常任務(wù)的自動(dòng)執(zhí)行。通過實(shí)現(xiàn)日常任務(wù)的自動(dòng)化執(zhí)行,DBA就可以用更多的時(shí)間去關(guān)注于數(shù)據(jù)庫環(huán)境管理中遇到的嚴(yán)重問題。
本文只是表達(dá)了筆者個(gè)人對(duì)于DBA應(yīng)具備的重要特質(zhì)的看法。你具備的特質(zhì)越多,作為DBA的你就越優(yōu)秀。成為一名成功DBA的關(guān)鍵是不斷地學(xué)習(xí)與提高,努力去掌握更多關(guān)于如何管理和維護(hù)數(shù)據(jù)庫環(huán)境的知識(shí)。
很多時(shí)候管理人員都忽視了DBA的個(gè)性特點(diǎn),他們只關(guān)注DBA的技術(shù)能力。實(shí)際上,上面談到的每個(gè)職責(zé)都意味著:DBA需要跟各種人員打交道,這些人員可能是銷售商、用戶、開發(fā)人員或者管理人員。這說明:DBA必須具有下面的個(gè)性特點(diǎn):自信心、好奇心、堅(jiān)韌的意志力、老練、自我驅(qū)動(dòng)、注意細(xì)節(jié)。
技術(shù)是指DBA執(zhí)行一項(xiàng)任務(wù)時(shí)所需要的技能。在數(shù)據(jù)庫環(huán)境的管理與維護(hù)中,技術(shù)任務(wù)可歸結(jié)成許多不同的分類。下面列出了一名DBA應(yīng)掌握的一些技術(shù)(排名不分先后)。
數(shù)據(jù)庫管理員職位的工作經(jīng)驗(yàn)人群比例
無(10%)
1年以下(10%)
1-3年(11%)
3-5年(31%)
5-10年(21%)
10年以上(13%)
數(shù)據(jù)庫管理員職業(yè)發(fā)展路徑
職位的匯報(bào)上級(jí)
、買T項(xiàng)目經(jīng)理
②產(chǎn)品研發(fā)經(jīng)理
、奂夹g(shù)經(jīng)理
職位的管理下屬
數(shù)據(jù)庫工程師
職位的轉(zhuǎn)職目的
、傺邪l(fā)經(jīng)理
、诩夹g(shù)經(jīng)理
企業(yè)招聘數(shù)據(jù)庫管理員可與獵頭網(wǎng)合作,快速招聘到合適的人才。