本文目錄一覽:
- 1、想從事DBA的工作即資料庫管理員,但是實力不夠,需要怎樣做呢?
- 2、如何成為MySQL DBA
- 3、資料庫管理員需要具備什麼樣的能力?
- 4、資料庫管理員DBA的職責、系統分析員和資料庫設計人員的職責、應用程序員的職責
- 5、成為互聯網公司mysql DBA需要掌握哪些技能
- 6、DBA的主要職責是什麼?
想從事DBA的工作即資料庫管理員,但是實力不夠,需要怎樣做呢?
DBA資料庫管理員要求:
近年來,我一直在和資料庫管理員打交道,並直接面試了很多DBA職位。本文想概括一下IT行業對DBA的要求,以及國內DBA的新資現狀。可以肯定地說,做一個高級DBA是很不錯的職業。如果你打算成為一名DBA,那麼希望本文起到拋磚引玉的作用。
什麼是DBA
資料庫管理員,英文是Database Administrator,簡稱DBA。這個職位對不同的人意味著不同的意義。一個小的軟體開發工作室和一個分工高度明細的大公司相比,DBA的職責來得更加寬泛一些。一個公司,不管它是自己開發應用軟體,還是購買第三方的應用軟體,只要涉及到資料庫(有多少不涉及資料庫的應用軟體呢?資料庫是商業的靈魂和大腦啊),就需要確定是否僱傭一個或幾個DBA。知道DBA這個職位有哪些要求,對於企業內部這個職位的定義或者對於那些未來的DBA將是至關重要的。下面我列出了DBA的一些職責:
安裝和升級資料庫伺服器(如Oracle、Microsoft SQL server),以及應用程序工具。 資料庫設計系統存儲方案,並制定未來的存儲需求計劃。 一旦開發人員設計了一個應用,就需要DBA來創建資料庫存儲結構(tablespaces)。 一旦開發人員設計了一個應用,就需要DBA來創建資料庫對象(tables,views,indexes)。 根據開發人員的反饋信息,必要的時候,修改資料庫的結構。 登記資料庫的用戶,維護資料庫的安全性。 保證資料庫的使用符合知識產權相關法規。 控制和監控用戶對資料庫的存取訪問。 監控和優化資料庫的性能。 制定資料庫備份計劃,災難出現時對資料庫信息進行恢復 維護適當介質上的存檔或者備份數據 備份和恢復資料庫 聯繫資料庫系統的生產廠商,跟蹤技術信息。 DBA的個性特點
很多時候管理人員都忽視了DBA的個性特點,他們只關注DBA的技術能力。實際上,上面談到的每個職責都意味著:DBA需要跟各種人員打交道,這些人員可能是銷售商、用戶、開發人員或者管理人員。這說明:DBA必須具有下面的個性特點:
自信心 好奇心 堅韌的意志力 老練 自我驅動 注意細節 為什麼這些個性特點很重要呢?
我就有幾個缺乏自信心的部下,他們反覆問我一些事無巨細的問題,他們沒有信心哪怕做最小的決定。他們也缺乏工作的主動性。這對於初級DBA來說可能問題不太大,但對於那些高級DBA來說,如果他們缺乏自信心,他們又可以依賴誰幫他們決策呢?在DBA的面試中,即使你不能回答某個技術問題,你也要表現出足夠的自信心。最致命的不是不知道問題的答案,而是不知道從哪兒得到答案。
幾乎所有的資料庫系統都在不停地更新。但並不是所有的更新都有技術文檔。對於好的DBA來說,好奇心是必需的。沒有好奇心和求知慾的DBA總是等待有人告訴他們答案。而一個求知慾強的DBA將安裝最新版本的資料庫系統,並立即開始搜尋那些哪怕是細微的功能和性能上的差異和增強,從而改進自己的工作。應試時一個必然問及的問題是:你手頭有哪些參考資料?你如何使用它們?毫無疑問,如果你只回答了資料庫的文檔,或者你甚至沒有讀過他們,你的”股票市值”將大大下降。好奇心會驅使DBA們理解數據字典(Data Dictionary)、管理工具(Tools)或者其他支持包(Packages)。
DBA常常會碰到棘手的問題。尋找答案是一個需要堅韌意志力、可以經受摔打的個性特點。我常常在一些討論組或者論壇上看到DBA們提出的問題,這些問題往往是提問者自己可以解決的,如果他們具有堅韌的個性特點,並努力尋求問題的答案。
自我驅動對每個人都是很重要的,對DBA尤其如此。DBA要能想辦法使問題出現,而不是等待問題的出現。自驅力強的DBA常常設法取得或者自己寫一些必要的腳本(Script)來監控包括數據表大小(Table Size)、表空間使用(Tablespace Usage)等項目,這些項目如果被忽視,他們將遇到麻煩。應試的時候DBA們常常被問及在PL/SQL、SQL或者SQL*PLUS方面的經驗,這些問題將把你從從來沒有編寫過自己需要的腳本的那些DBA們區分開。
不用說和用戶,就是和程序員和管理人員打交道,也需要你足夠老練。一個一點不會處事的DBA不會為你做什麼好事,只會在你的部門點燃敵對情緒的烈火。老練是這樣一種能力,你勸告某個人到地府去,哈哈,最後這個人懷著渴望的心情去了。很多時候,開發者、管理者、用戶,他們會提出毫無道理的需求,DBA們需要老練地引導、修正它們的要求,說服他們。在應試時,你的應對就很能說明你是否老練。
最後說說注意細節,這種性格傾向非常重要。注意細節的DBA們衣著整潔,有自己的日程安排,在應試前對應聘的單位做過調查。注意細節的DBA們深入了解資料庫的內核,並能理解視圖、表之間的關係。
DBA的等級
DBA的等級並不是很嚴格的。按照對資料庫的掌握情況,我簡單地分成三個等級:初級Primary、中級Intermediate和高級Senior。
初級DBA又稱為DBBS,是英文Database Baby Sitter的縮寫。初級DBA常常是兼職的,他們往往同時是程序員或者兼任其他的工作。初級DBA往往把個人簡歷寫得很棒,參與了很多和資料庫有關的項目或工作。但是,這些項目或者工作往往是:第三方軟體供應商已經安裝並配置了資料庫,他們只做一些監控的工作。他們能處理一些簡單的問題,但大多數時候他們嚮應用軟體供應商求救。初級DBA更喜歡圖形化的資料庫管理或者監控工具,他們喜歡Access這樣的桌面資料庫簡單易用,並把這些小型資料庫的經驗簡單地應用到大型資料庫相關的工作中。
初級DBA是最好區分的。而中級DBA和高級DBA就不太好區分。他們的差別在於經驗的不同和個性特點、能力方面的差異。中級DBA比較多,他們可以勝任高級DBA的大部分工作,包括:
資料庫安裝 資料庫配置和管理 許可權設置和安全管理 監控和性能調節 備份和恢復 解決一般的問題 中級DBA往往從業一年左右,熟悉某種操作系統環境下的資料庫。因為對中級DBA來講,Windows NT和Unix是有很大差別的。中級DBA對SQL比較熟悉,他們自己購買了幾本資料庫方面的書籍,並深入鑽研。中級DBA往往同時兼任資料庫程序員,他們的工作對性能、穩定性、安全性的追求基本上不是很高,往往配合高級DBA做一些例行工作。
高級DBA在國內是非常少的。他們購買了太多的資料庫方面的英文資料,也許是托朋友從Amazon買的。相對於他們的報酬來講,買書的錢是很少的一個比例。高級DBA一般都熟悉很多種操作平台下的幾種大型資料庫。他們知道各種不同資料庫在不同環境下的優勢和劣勢,並能在資料庫平台和資料庫環境的選擇方面做出決策。他們一般通曉系統架構和資料庫設計,並能對資料庫進行各種級別的優化。高級DBA一般都配有助手,他們更偏向做決策和計劃。高級DBA往往在銀行業、保險業、在線交易等對穩定性、安全性、性能都要求比較高的關鍵業務處理領域大顯身手。
很多時候,是否取得資料庫專家認證證書並不是很重要。我知道很多資料庫廠商的培訓只要你去了都會獲得證書。有很多的公司提供商業化的培訓,他們的服務質量也有好有劣。所以證書並不是特別地有意義。
幾種流行的資料庫系統
最”容易”的資料庫系統-Microsoft SQL Server
如果你打算做一個DBA,建議你選擇那些現在比較流行的資料庫系統。這意味著你將有更多的就業機會、交流和培訓機會,而且,流行自有流行的理由,你可以因此省心很多。當然,就業競爭壓力也比較大。一般的入門者選擇Microsoft SQL Server,這是非常適合中小型企業的資料庫系統,熟悉Access的讀者很容易就能初步使用Microsoft SQL Server,成為一個DBBS。 J
Microsoft SQL Server 7.0的報價,5用戶版1399美金,增加用戶時,127美金每用戶。
最”難”的資料庫-無冕之王Oracle
如果你有機會接觸到Oracle,那可是個好機會。Oracle是目前最看好的資料庫廠商,由於其強大的功能和可配置、可管理能力,Oracle DBA的薪資一般比其他資料庫管理員的薪資要高。而且,Oracle在大中型企業的關鍵應用也更加普遍了。Oracle可以運行在Windows NT、Sun Solaris、Linux等平台下。很多情況下要求你不僅僅熟悉NT,還要你熟悉Unix;而且Oracle不太友善的界面和成箱的Oracle產品資料可能也是一個障礙。
Oracle 8i標準版的報價,如果運行在Windows NT,附帶JServer和interMedia,支持5個並發用戶,報價是3925美金每CPU。增加並發用戶時,785美金每用戶。增加附加的命名用戶時,392.5美金每用戶。
資料庫系統的貴族-IBM UDB/DB2
作為30年資料庫研究的成果,IBM DB2確實稱得上”資料庫系統的貴族”。不管是小型商業系統,還是大的銀行系統,用DB2都是可以高枕無憂的。最近推出的新版DB2 6.1, 管理和調節工具更加卓越和便於使用。DB2 可以運行在Intel架構上,也可以運行在IBM的S/390大型計算機上。如果你所在的行業對IBM的機器特別地稱道,建議你學習IBM DB2。
DB2有兩種版本:工作組版和企業版。工作組版999美元每伺服器,外加249美元每個並發用戶。而企業版是12500美元每個CPU,不限並發用戶數量。
以Java為中心的資料庫-Sybase Adaptive Server Enterprise(ASE) 12.0
即將發布的Sybase ASE 12.0,直接面向Java 程序員。這種以Java為中心的資料庫系統,為那些準備在Java 平台下構建企業應用的企業來說,將是最好的選擇。但是ASE稱不上一個資料庫領域的領先者,儘管相對於它以前的版本已經改進很多,並支持多個CPU和更多的並發,還有很多的新的特性。但Sybase的風光似乎已經不再。
值得期盼的Informix Centaur
有時候”第一”只是意味著你的對手需要等待更長的時間去趕上你。這正是1997年創立的Informix所面臨的。Informix公司是率先將多媒體特性加入到關係資料庫系統的大型資料庫廠商之一。但是如今,IBM、Oracle、Sybase都已經跨越了這個概念。所以,Informix不得不尋求新的支撐來使自己區別於其他資料庫廠商。這就是Informix Centaur的目標。Informix Centaur結合了Informix Dynamic Server 7.3的對象-關係資料庫和Informix Universal Data Option 9.1,意在獲得更好的適應性和多媒體支持。詳情如何,我們拭目以待!
DBA的薪資
有很多因素影響到你作為DBA的薪資:
你的經驗和能力所決定的DBA等級 你所熟悉的資料庫系統 你的個性特點和潛力 下面的表說明了國內DBA人員的基本薪資狀況,並說明了DAB等級和你所熟悉的資料庫系統怎樣影響到DBA的薪資。當然,這只是我個人掌握的情況,只能在一定程度上代表行業的平均水平。
DBA等級資料庫系統 初級DBA年薪(萬元) 中級DBA年薪(萬元) 高級DBA年薪(萬元) Oracle 4 8 11 Microsoft SQL Server 3 5 8 IBM DB2 4 8 10 Sybase 3.5 6 8 Informix 4 7 10 註:每年按13個月計算。
如何成為MySQL DBA
首先自學sql語句,之後看有關oracle的小布老師視頻入門,在虛擬機上進行聯繫,多看書多做筆記多做練習。
進行linux基礎簡單那學習,慢一點的半年也可以找到一份oracle dba職位了,dba現在沒以前吃香了但是還是不錯的,工作壓力當然有時也比較大。
自學困難就報個培訓班,培訓班現在滿大街都是,不過用來入門還是不錯的。
資料庫管理員需要具備什麼樣的能力?
資料庫管理員所需具備的能力
1、具備DBA的技術能力,能夠獨立安裝和升級資料庫伺服器。
2、有足夠的專業水平,能夠獨立創建資料庫存儲結構。
3、良好的溝通能力,聯繫資料庫系統的生產廠商,跟蹤技術信息。
4、要足夠細心,登記資料庫的用戶,維護資料庫的安全性。
5、意志力堅韌,不斷解決各類問題。
資料庫管理員的工作職責
1、保證資料庫的使用符合知識產權相關法規。
2、資料庫的安裝、配置和管理。
3、控資料庫的警告日誌。
4、必要時對資料庫性能進行合理地調整。
5、監控資料庫的日常會話情況。
資料庫管理員DBA的職責、系統分析員和資料庫設計人員的職責、應用程序員的職責
資料庫管理員負責全面管理和控制資料庫系統,包括資料庫的安裝、監控、備份、恢復等基本工作。
系統分析員的主要職責是對軟體項目進行整體規劃、需求分析、設計軟體的核心架構、指導和領導項目開發小組進行軟體開發和軟體實現,並對整個項目進行全面的管理工作。
資料庫設計人員的職責包括:需求分析、概念結構設計、邏輯結構設計、物理結構設計、資料庫的實施和資料庫的運行和維護。
應用程序員的職責:對項目經理負責,負責軟體項目的詳細設計、編碼和內部測試的組織實施,對小型軟體項目兼任系統分析工作,完成分配項目的實施和技術支持工作。協助項目經理和相關人員同客戶進行溝通,保持良好的客戶關係。參與需求調研、項目可行性分析、技術可行性分析和需求分析。
熟悉並熟練掌握交付軟體部開發的軟體項目的相關軟體技術。負責向項目經理及時反饋軟體開發中的情況,並根據實際情況提出改進建議。參與軟體開發和維護過程中重大技術問題的解決,參與軟體首次安裝調試、數據割接、用戶培訓和項目推廣。負責相關技術文檔的擬訂。負責對業務領域內的技術發展動態進行分析研究。
擴展資料
產品的整個生命周期里資料庫管理員的職責重要而廣泛,這催生了各個縱向的運維技術方向,凡是關係到資料庫質量、效率、成本、安全等方面的工作,及涉及到的技術、組件,主要包括:
資料庫監控技術:包括監控平台的研發、應用,服務監控準確性、實時性、全面性的保障。
資料庫故障管理:包括服務的故障預案設計,預案的自動化執行,故障的總結並反饋到產品/系統的設計層面進行優化以提高產品的穩定性。
資料庫容量管理:測量服務的容量,規劃服務的機房建設,擴容、遷移等工作。
資料庫性能優化:從各個方向,包括SQL優化、參數優化、應用優化、客戶端優化等,提高資料庫的性能和響應速度,改善用戶體驗。
資料庫安全保障:包括資料庫的訪問安全、防攻擊、許可權控制等。
資料庫自動部署:部署平台/工具的研發,及平台/工具的使用,做到安全、高效的發布服務。
資料庫集群管理:包括資料庫的伺服器管理、分散式集群管理等。
資料庫模型設計:包括資料庫邏輯和物理模型的設計,如何實現性能最優,架構可擴展,服務可運維等。
參考資料來源:百度百科-資料庫管理員
參考資料來源:百度百科-系統分析師
參考資料來源:百度百科-資料庫設計
參考資料來源:百度百科-程序員
成為互聯網公司mysql DBA需要掌握哪些技能
高級操作
1.Mysql 主從同步配置
2.Mysql 雙master 配置
3.Mysql 雙master+叢庫+keepalived 配置高可用資料庫
客戶端
作為DBA,一定不要用各種GUI工具,mysql自帶命令行client才是你的最佳武器
可選項
1.mysql 分區配置,因為限制太多,實際中分表都是程序做
2.高性能 mysql
a).drizzle
b).MariaDB
c).handlersocket
基本知識
1.mysql的編譯安裝
2.mysql 第3方存儲引擎安裝配置方法
3.mysql 主流存儲引擎(MyISAM/innodb/MEMORY)的特點
4.字元串編碼知識
5.MySQL用戶賬戶管理
6.數據備份/數據入導出
7.mysql 支持的基本數據類型
8.庫/表/欄位/索引 的創建/修改/刪除
9.基本sql 語法:select/insert/update/delete,掌握最基本的語法即可,什麼inner join,left join的了解就行 mysql的應用場景大多都是高並發訪問/業務邏輯簡單,join/子查詢/視圖/觸發器 基本上不用
DBA的主要職責是什麼?
DBA的主要職責有:
安裝和升級資料庫伺服器,以及應用程序工具。
資料庫設計系統存儲方案,並制定未來的存儲需求計劃。
一旦開發人員設計了一個應用,就需要DBA來創建資料庫存儲結構,創建資料庫對象。
根據開發人員的反饋信息,必要的時候,修改資料庫的結構。
登記資料庫的用戶,維護資料庫的安全性。
控制和監控用戶對資料庫的存取訪問。
監控和優化資料庫的性能。
保證資料庫的使用符合知識產權相關法規。
維護適當介質上的存檔或者備份數據。
制定資料庫備份計劃,災難出現時對資料庫信息進行恢復。
資料庫管理員:
資料庫管理員(Database Administrator,簡稱DBA),是從事管理和維護資料庫管理系統(DBMS)的相關工作人員的統稱,他屬於運維工程師的一個分支,主要負責業務資料庫從設計、測試到部署交付的全生命周期管理。
核心目標:
DBA的核心目標是保證資料庫管理系統的穩定性、安全性、完整性和高性能。
資料庫開發工程師與資料庫管理員的區別:
資料庫開發工程師的主要職責是設計和開發資料庫管理系統和資料庫應用軟體系統,側重於軟體研發;
DBA的主要職責是運維和管理資料庫管理系統,側重於運維管理。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/312796.html