上海Oracle速文培訓中心

7x24小時咨詢熱線

400-660-3310

當前位置 : 好學校 上海Oracle速文培訓中心 學習資訊 資訊詳情

詳解數(shù)據(jù)庫dba職業(yè)、職責及相關(guān)前景,值得收藏

2020-04-14

導讀:上海速文培訓中心秉承誠信育人的核心理念,致力于培養(yǎng)專業(yè)的IT技術(shù)人員,在八年的運營時間里,速文培養(yǎng)的學員分布于微軟、惠普、摩根史丹利、騰訊、百度、阿里巴巴、華為及多家銀行等一線名企。前不久,有學員咨詢 ,想了解一下數(shù)據(jù)庫dba職業(yè)、職責及相關(guān)前景的內(nèi)容,小編就整理一些,希望對大家有幫助!

DBA介紹

我眼中的DBA

詳解數(shù)據(jù)庫dba職業(yè)、職責及相關(guān)前景,值得收藏

DBA的核心目標是**數(shù)據(jù)庫管理系統(tǒng)的穩(wěn)定性、安全性、完整性和高性能。

在國外,也有公司把DBA稱作數(shù)據(jù)庫工程師(Database Engineer),兩者的工作內(nèi)容基本相同,都是**數(shù)據(jù)庫服務(wù)7*24小時的穩(wěn)定高效運轉(zhuǎn),但是需要區(qū)分一下DBA和數(shù)據(jù)庫開發(fā)工程師(Database Developer):

1) 數(shù)據(jù)庫開發(fā)工程師的主要職責是設(shè)計和開發(fā)數(shù)據(jù)庫管理系統(tǒng)和數(shù)據(jù)庫應(yīng)用軟件系統(tǒng),側(cè)重于軟件研發(fā);

2) DBA的主要職責是運維和管理數(shù)據(jù)庫管理系統(tǒng),側(cè)重于運維管理。

那么dba又有什么職責呢?

數(shù)據(jù)庫管理員的主要職責有以下幾個方面:

1、數(shù)據(jù)庫設(shè)計

包括字段、表和關(guān)鍵字段設(shè)計;資源在輔助存儲設(shè)備上是怎樣使用的,怎樣增加和刪除文件及記錄,以及怎樣發(fā)現(xiàn)和補救損失。

2、巡檢

監(jiān)視監(jiān)控數(shù)據(jù)庫的警告日志,定期做備份刪除。監(jiān)控數(shù)據(jù)庫的日常會話情況。碎片、剩余表空間監(jiān)控,及時了解表空間的擴展情況、以及剩余空間分布情況。監(jiān)視對象的修改。定期列出所有變化的對象安裝和升級數(shù)據(jù)庫服務(wù)器(如Oracle、MicrosoftSQLserver),以及應(yīng)用程序工具。

數(shù)據(jù)庫設(shè)計系統(tǒng)存儲方案,并制定未來的存儲需求計劃。制定數(shù)據(jù)庫備份計劃,災(zāi)難出現(xiàn)時對數(shù)據(jù)庫信息進行恢復(fù)。維護適當介質(zhì)上的存檔或者備份數(shù)據(jù)。備份和恢復(fù)數(shù)據(jù)庫。聯(lián)系數(shù)據(jù)庫系統(tǒng)的生產(chǎn)廠商,跟蹤技術(shù)信息。

3、備份

對數(shù)據(jù)庫的備份監(jiān)控和管理數(shù)據(jù)庫的備份至關(guān)重要,對數(shù)據(jù)庫的備份策略要根據(jù)實際要求進行更改,數(shù)據(jù)的日常備份情況進行監(jiān)控。

4、權(quán)限控制

修改密碼:規(guī)范數(shù)據(jù)庫用戶的管理定期對管理員等重要用戶密碼進行修改。對于每一個項目,應(yīng)該建立一個用戶。DBA應(yīng)該和相應(yīng)的項目管理人員或者是程序員溝通,確定怎樣建立相應(yīng)的數(shù)據(jù)庫底層模型,由DBA統(tǒng)一管理,建立和維護。任何數(shù)據(jù)庫對象的更改,應(yīng)該由DBA根據(jù)需求來操作。

5、SQL語句審核

對SQL語句的書寫規(guī)范的要求一個SQL語句,如果寫得不理想,對數(shù)據(jù)庫的影響是很大的。所以,每一個程序員或相應(yīng)的工作人員在寫相應(yīng)的SQL語句時,應(yīng)該嚴格按照《SQL書寫規(guī)范》一文,要有DBA檢查才可以正式運行。

6、最終用戶服務(wù)和協(xié)調(diào)

數(shù)據(jù)庫管理員規(guī)定用戶訪問權(quán)限和為不同用戶組分配資源。如果不同用戶之間互相抵觸,數(shù)據(jù)庫管理員應(yīng)該能夠協(xié)調(diào)用戶以優(yōu)化安排。

7、數(shù)據(jù)庫安全

數(shù)據(jù)庫管理員能夠為不同的數(shù)據(jù)庫管理系統(tǒng)用戶規(guī)定不同的訪問權(quán)限,以保護數(shù)據(jù)庫不被未經(jīng)授權(quán)的訪問和破壞。例如,允許一類用戶只能檢索數(shù)據(jù),而另一類用戶可能擁有更新數(shù)據(jù)和刪除記錄的權(quán)限。

上面指的是狹義上的DBA,廣義上的DBA職責比這個大得多,需要覆蓋產(chǎn)品從需求設(shè)計、測試到交付上線的整個生命周期,在此過程中不僅要負責數(shù)據(jù)庫管理系統(tǒng)的搭建和運維,更要參與到前期的數(shù)據(jù)庫設(shè)計,中期的數(shù)據(jù)庫測試和后期的數(shù)據(jù)庫容量管理和性能優(yōu)化。

對于初創(chuàng)公司,DBA的工作可能由運維工程師來兼任,從申請域名開始,到服務(wù)器上架,配置網(wǎng)絡(luò)設(shè)備,部署操作系統(tǒng),安裝數(shù)據(jù)庫,設(shè)計和部署監(jiān)控,防止漏洞和攻擊等等。而大型公司對DBA工作的要求越來越高。

數(shù)據(jù)庫管理員以技術(shù)為基礎(chǔ),通過技術(shù)**數(shù)據(jù)庫提供更高質(zhì)量的服務(wù)。DBA工作的職責及在業(yè)務(wù)中的位置決定了DBA需要具備更加廣博的知識和深入的技術(shù)能力。

在數(shù)據(jù)庫環(huán)境的管理與維護中,技術(shù)任務(wù)可歸結(jié)成許多不同的分類。下面列出了一名DBA應(yīng)掌握的一些技術(shù)。

1.數(shù)據(jù)備份/恢復(fù)與災(zāi)難恢復(fù)

恢復(fù)已損壞的數(shù)據(jù)庫是每一個DBA應(yīng)掌握的最重要的技能。DBA需要完全理解數(shù)據(jù)庫所有可能的備份與恢復(fù)方法,以及不同備份方法與不同恢復(fù)策略的對應(yīng)關(guān)系。此外,DBA還需要與業(yè)務(wù)部門合作,一起確認業(yè)務(wù)需求,明確用戶能夠容忍的數(shù)據(jù)丟失底線。此外,業(yè)務(wù)用戶還需要確定在系統(tǒng)故障情況下,他們的業(yè)務(wù)能夠維持多長時間??傊褪歉鶕?jù)磁盤空間、數(shù)據(jù)容忍底線和故障恢復(fù)時間來評估備份策略。

理解這些需求可以幫助DBA開發(fā)出一個滿足業(yè)務(wù)用戶要求的備份/恢復(fù)方法。一個優(yōu)秀的DBA要定期測試備份與恢復(fù)流程,**他們有能力恢復(fù)業(yè)務(wù)數(shù)據(jù),滿足企業(yè)所規(guī)定的業(yè)務(wù)數(shù)據(jù)丟失與恢復(fù)要求。

2.工具集的使用

所謂工具集,指要有一組用于執(zhí)行不同DBA任務(wù)的腳本。這個工具集應(yīng)該包含不同的小代碼片段,它們可以快速診斷問題或執(zhí)行一個特定的任務(wù)。

這些工具腳本應(yīng)該按DBA的活動類型歸類,如備份、索引維護、性能優(yōu)化、容量管理等。由于總是會執(zhí)行新任務(wù)、發(fā)現(xiàn)新問題或找到其他人開發(fā)的好用腳本,因此一個優(yōu)秀的DBA會不斷地給這個工具集增加新腳本。此外,還應(yīng)該了解網(wǎng)上哪里能夠找到一些免費的工具和腳本。一個好的DBA知道什么時候可以利用其他人編寫的腳本,從而節(jié)省自己的時間和改進自己的工具集。

3.知道如何快速尋找答案

數(shù)據(jù)庫每天會面臨各種各樣故障的挑戰(zhàn),從硬件到網(wǎng)絡(luò),從性能壓力到程序bug,DBA都要從容應(yīng)對,一一排除。即使是數(shù)據(jù)庫大牛,也不可能是無所不知的,因此每個DBA一方面需要不斷修煉自己,積累操作系統(tǒng)、網(wǎng)絡(luò)、硬件、存儲系統(tǒng)、分布式計算等理論基礎(chǔ),另一方面還要有快速尋找新問題解決方法的能力。如果一個數(shù)據(jù)庫實例不能按預(yù)期方式運轉(zhuǎn),那么快速尋找新問題的解決方法也是一個重要能力。一個好的DBA知道如何快速地在網(wǎng)上查找一個未知問題的解決方法。此外,他們也可能已經(jīng)知道了一些非常不錯的網(wǎng)站,也知道業(yè)界專家會提供一些好建議,同時知道什么時候應(yīng)該忽略一些不好的建議。你可能想象不到,確實有一些建議不值得參考。

4.知道如何監(jiān)控和優(yōu)化數(shù)據(jù)庫性能

對于任何數(shù)據(jù)庫產(chǎn)品,性能都尤其重要,它會直接影響產(chǎn)品的響應(yīng)速度和用戶體驗。對于一個DBA來說,性能優(yōu)化一般需要占用50%的工作時間,因此DBA需要知道如何監(jiān)控和優(yōu)化數(shù)據(jù)性能。

以SQL Server舉例,性能是一個關(guān)鍵的問題,因此DBA需要知道如何修復(fù)故障和監(jiān)控性能問題。有許多第三方性能監(jiān)控工具可以幫助DBA優(yōu)化性能。如果DBA只使用第三方工具,而不會使用SQL Server自帶的原生工具來監(jiān)控性能,那么相信很快就會出現(xiàn)問題。雖然使用第三方工具來監(jiān)控性能也很不錯,但是DBA一定要理解SQL自帶的一些原生工具,如SQL Server Profiler、Database Engine Tuning Advisor、Dynamic ManagementViews、系統(tǒng)/擴展的存儲過程、Extended Events等。許多第三方工具實際上在使用這些底層的原生工具。因此,理解這些自帶的原生工具將有利于增強DBA使用第三方工具的經(jīng)驗。

5.研究新版本

在技術(shù)領(lǐng)域中,沒有什么是一成不變的。每隔兩三年,主流數(shù)據(jù)庫廠商都會發(fā)布一個大版本的更新。DBA應(yīng)該緊跟新版本所作的修改,它們可能有許多變化方法,快速方法是遲早介入這個過程。測試版開放后馬上下載和安裝,盡快掌握一手使用經(jīng)驗。一名好的DBA總是走在學習排頭兵,總是會最快時間安裝和測試新版本。這樣他們就可以盡早理解新特性,然后提出一些合理的新建議,幫助組織更好地利用新版本數(shù)據(jù)庫。

6.理解代碼實踐方法

DBA應(yīng)該了解如何編寫高效的代碼。有許多糟糕的編碼實踐方法會導致拙劣的性能。一名好的DBA要能夠理解和識別這些糟糕的編碼實踐方法,知道如何修改這些爛代碼,讓它們變成高效代碼。此外,他們還要記錄下寫代碼的實踐方法,并且將這些實踐方法分享給其他人。

7.持續(xù)不斷地學習

數(shù)據(jù)庫及其組件涉及面非常廣。DBA很難理解一個技術(shù)的方方面面。DBA需要持續(xù)學習如何管理數(shù)據(jù)庫。這個學習過程有很多方法。其中之一就是參加正式培訓。但是,并非人人都有這樣充裕的事件和金錢,也并非人人都能夠放下手頭工作專門出去參加正式的培訓。但是,還有許多其他方法可以獲得培訓,而且大多數(shù)還是免費的。一名好的DBA一定要訂閱一些定期發(fā)布數(shù)據(jù)庫新技巧和新文章的社區(qū)網(wǎng)站。此外,他還應(yīng)該加入一些用戶組織,可以在周末參加一些當?shù)氐拿赓M沙龍活動。

8.數(shù)據(jù)庫安全性

安全性是一個熱門話題。DBA應(yīng)該完全掌握如何實現(xiàn)數(shù)據(jù)庫的安全訪問。他們應(yīng)該理解操作系統(tǒng)身份驗證和數(shù)據(jù)庫身份驗證的區(qū)別,以及它們各自的使用場合。他們應(yīng)該理解如何使用數(shù)據(jù)庫角色來管理不同類型用戶的安全配置。他們應(yīng)該理解連接數(shù)據(jù)庫的端口與協(xié)議。此外,他們還應(yīng)該理解如何加密整個數(shù)據(jù)庫,或者加密一個數(shù)據(jù)庫中一個表的某一個字段,同時理解關(guān)于加密數(shù)據(jù)的各種問題。

9.數(shù)據(jù)庫設(shè)計

決定數(shù)據(jù)庫性能的一個關(guān)鍵問題是數(shù)據(jù)庫設(shè)計。DBA需要理解關(guān)于數(shù)據(jù)庫設(shè)計的各個方面。他們要能夠理解設(shè)計好壞的區(qū)別。他們需要理解為什么使用正確的外鍵約束、主鍵、檢查約束和使用數(shù)據(jù)類型能夠保持數(shù)據(jù)庫的數(shù)據(jù)完整性和實現(xiàn)高效的數(shù)據(jù)查詢與更新。

10.索引設(shè)計

數(shù)據(jù)庫索引是提高應(yīng)用程序檢索和更新數(shù)據(jù)速度的重要環(huán)節(jié)。DBA需要知道索引的工作原理。他們應(yīng)該知道聚簇索引和非聚簇索引的區(qū)別,知道這些索引的物理存儲方式。DBA應(yīng)該知道如何在執(zhí)行計劃中使用這些索引。他們應(yīng)該理解如何找到索引的使用統(tǒng)計、理解索引碎片及如何發(fā)現(xiàn)丟失的索引。他們應(yīng)該知道如何維護索引,以及索引統(tǒng)計信息對于查詢引擎的重要作用。

11.容量監(jiān)控與規(guī)劃

數(shù)據(jù)庫往往要使用大量的資源,包括CPU、內(nèi)存、I/O及磁盤空間。DBA應(yīng)該理解如何監(jiān)控數(shù)據(jù)庫所需要的不同主機資源的用量。他們應(yīng)該能夠理解這些資源在不同時間的使用情況,以及利用歷史使用數(shù)據(jù)來規(guī)劃未來的容量需求。在監(jiān)控過程中,DBA應(yīng)該能夠預(yù)見到容量規(guī)劃會在將來什么時候出現(xiàn)問題,然后采取必要的措施保持數(shù)據(jù)庫不會因為容量限制而出現(xiàn)中斷。

12.數(shù)據(jù)庫許可證

不同的產(chǎn)品有許多不同的許可證授權(quán)方式。而且,同一款產(chǎn)品本身又有許多不同的版本。DBA應(yīng)該理解所負責的數(shù)據(jù)庫版本的不同授權(quán)模式。他們應(yīng)該能夠提供指導如何通過合理購買授權(quán)來減少數(shù)據(jù)庫總擁有成本,以及如何合理利用授權(quán)方法來降低未來版本的升級成本。

13.盡可能實現(xiàn)自動化

DBA每天都需要執(zhí)行許多的日常任務(wù)。其中一些任務(wù)需要每天執(zhí)行,而另一些則每周、每月或每年執(zhí)行。一名好的DBA需要理解如何高效地安排自己的時間。其中一種方法是建立工作流程,這些日常任務(wù)的自動執(zhí)行。通過實現(xiàn)日常任務(wù)的自動化執(zhí)行,DBA就可以用更多的時間去關(guān)注于數(shù)據(jù)庫環(huán)境管理中遇到的嚴重問題。

DBA的等級并不是很嚴格的。按照對數(shù)據(jù)庫的掌握情況,我簡單地分成三個等級:初級Primary、中級Intermediate和高級Senior。

初級DBA

詳解數(shù)據(jù)庫dba職業(yè)、職責及相關(guān)前景,值得收藏

初級DBA又稱為DBBS,是英文Database Baby Sitter的縮寫。初級DBA常常是兼職的,他們往往同時是程序員或者兼任其他的工作。初級DBA往往把個人簡歷寫得很棒,參與了很多和數(shù)據(jù)庫有關(guān)的項目或工作。但是,這些項目或者工作往往是:第三方軟件供應(yīng)商已經(jīng)安裝并配置了數(shù)據(jù)庫,他們只做一些監(jiān)控的工作。他們能處理一些簡單的問題,但大多數(shù)時候他們向應(yīng)用軟件供應(yīng)商求救。初級DBA更喜歡圖形化的數(shù)據(jù)庫管理或者監(jiān)控工具,他們喜歡Access這樣的桌面數(shù)據(jù)庫簡單易用,并把這些小型數(shù)據(jù)庫的經(jīng)驗簡單地應(yīng)用到大型數(shù)據(jù)庫相關(guān)的工作中。

初級DBA是更好區(qū)分的。而中級DBA和高級DBA就不太好區(qū)分。他們的差別在于經(jīng)驗的不同和個性特點、能力方面的差異。中級DBA比較多,他們可以勝任高級DBA的大部分工作,包括:

1、數(shù)據(jù)庫安裝;

2、數(shù)據(jù)庫配置和管理;

3、權(quán)限設(shè)置和安全管理;

4、監(jiān)控和性能調(diào)節(jié);

5、備份和恢復(fù);

6、解決一般的問題;

中級DBA往往從業(yè)一年左右,熟悉某種操作系統(tǒng)環(huán)境下的數(shù)據(jù)庫。因為對中級DBA來講,Windows NT和Unix是有很大差別的。中級DBA對SQL比較熟悉,他們自己購買了幾本數(shù)據(jù)庫方面的書籍,并深入鉆研。中級DBA往往同時兼任數(shù)據(jù)庫程序員,他們的工作對性能、穩(wěn)定性、安全性的追求基本上不是很高,往往配合高級DBA做一些例行工作。

高級DBA在國內(nèi)是非常少的。他們能夠熟練閱讀數(shù)據(jù)庫方面的英文資料,并且都熟悉很多種操作平臺下的幾種大型數(shù)據(jù)庫。他們知道各種不同數(shù)據(jù)庫在不同環(huán)境下的優(yōu)勢和劣勢,并能在數(shù)據(jù)庫平臺和數(shù)據(jù)庫環(huán)境的選擇方面做出決策。他們一般通曉系統(tǒng)架構(gòu)和數(shù)據(jù)庫設(shè)計,并能對數(shù)據(jù)庫進行各種級別的優(yōu)化。高級DBA一般都配有助手,他們更偏向做決策和計劃。高級DBA往往在銀行業(yè)、保險業(yè)、在線交易等對穩(wěn)定性、安全性、性能都要求比較高的關(guān)鍵業(yè)務(wù)處理領(lǐng)域大顯身手。

很多時候,是否取得數(shù)據(jù)庫專家認證證書并不是很重要。很多數(shù)據(jù)庫廠商的培訓只要你去了都會獲得證書。有很多的公司提供商業(yè)化的培訓,他們的服務(wù)質(zhì)量也有好有劣。所以證書并不是特別地有意義。

數(shù)據(jù)架構(gòu)
數(shù)據(jù)架構(gòu)1

詳解數(shù)據(jù)庫dba職業(yè)、職責及相關(guān)前景,值得收藏

數(shù)據(jù)庫作為整個系統(tǒng)的一部分,它的表現(xiàn)直接受服務(wù)器、操作系統(tǒng)、存儲、網(wǎng)絡(luò)、應(yīng)用程序中SQL語句的質(zhì)量、數(shù)據(jù)庫設(shè)計的質(zhì)量、以及其它諸多因素的影響,這些因素加在一起非常復(fù)雜,經(jīng)驗起著非常重要的作用。因此一個好的DBA除了知識作為基礎(chǔ),經(jīng)驗的多寡、見識的薄廣,往往決定了是否合格與優(yōu)秀。

優(yōu)秀的DBA不僅關(guān)心自己運維的數(shù)據(jù)庫系統(tǒng)的原理和發(fā)展,而且緊跟業(yè)界數(shù)據(jù)庫前沿技術(shù),并關(guān)注數(shù)據(jù)庫領(lǐng)域的會議。其中包括國際有名的數(shù)據(jù)庫三大會議SIGMOD、VLDB、ICDE,還有知名數(shù)據(jù)庫公司Percona主辦的Percona Live和Oracle主辦的Open World,以及國內(nèi)知名的DBA盛會中國數(shù)據(jù)庫技術(shù)大會(DTCC)等。

從另外一個角度說,DBA工作領(lǐng)域?qū)嵺`經(jīng)驗和獨立工作能力要求較高,沒有經(jīng)過大量的動手實踐是很難勝任DBA相關(guān)工作的 [6] 。正是由于上述原因,其職場現(xiàn)狀是DBA職位不易進入,而用人單位很難找到合適的從業(yè)人員,人員缺口非常大。

也正是由于上述原因,隨著工作年限的增長,DBA的經(jīng)驗在增加,就像醫(yī)生一樣,其價值會越來越高,可以逐步成長為資深DBA、系統(tǒng)架構(gòu)師、信息主管(CIO)等等,而不會出現(xiàn)許多軟件開發(fā)從業(yè)人員在一定年齡后面臨的轉(zhuǎn)行問題。

另外,從職業(yè)前景看,從事DBA有著更多的職場機遇 。一般而言,系統(tǒng)中的軟硬件都是IBM、HP、Oracle等業(yè)界優(yōu)質(zhì)廠商提供的,在與廠商談判、合作、測試、實施、維護、優(yōu)化等等過程中,會產(chǎn)生許多特好的職場機遇,這一點是從事開發(fā)工作很難比擬的。

從DBA的工資統(tǒng)計數(shù)據(jù)看,隨著工作經(jīng)驗的積累,DBA工資的增長幅度會遠大于其它的計算機方向。

從工作的穩(wěn)定性上看,系統(tǒng)的復(fù)雜性和經(jīng)驗的重要性已經(jīng)決定了DBA職位的不可替代性。

從知識的積累、更新和替代角度看,數(shù)據(jù)庫的根基始終沒變,變的是不斷增強的功能和不斷擴展的應(yīng)用范圍。因此,在不同時期所學的知識和獲得的經(jīng)驗是疊加和累積的關(guān)系。

總之, DBA職業(yè)是一個高挑戰(zhàn)和高回報的職業(yè),有一定能力的和聰明的技術(shù)人員應(yīng)該挑戰(zhàn)自我,進入這個被二十多年事實不斷證明的越來越有前景的職業(yè) 。

收藏
分享到:

相關(guān)課程

相關(guān)資訊

上海Oracle速文培訓中心

上海Oracle速文培訓中心

認證等級

信譽良好,可安心報讀

上海Oracle速文培訓中心

已獲好學校V2信譽等級認證

信譽值

  • (60-80)基礎(chǔ)信譽積累,可放心報讀
  • (81-90)良好信譽積累,可持續(xù)信賴
  • (91-100)充分信譽積累,推薦報讀

與好學校簽訂讀書保障協(xié)議:

  • 88%
  • 367
  • 12855
在線咨詢
;