所謂DBA,就是咱們一般說的數據庫管理員,主要從事數據庫安裝、管理、調優、備份、容災、集羣、安全等。DBA除了對數據庫自己比較熟悉外,還要對硬件(主機、存儲、網絡)、操做系統等方面有較好的理解,不然很難成爲真正的高手。web
傳統DBA必備技能數據庫
傳統工做模式下,DBA須要爲企業搭建一套高可用性(HA)、高性能的數據庫系統,負責數據庫平常維護工做。同時,在數據庫出現問題時,可以及時定位、解決問題。一名優秀的DBA一般須要掌握如下的技能:後端
基礎理論知識,包括硬件、操做系統、網絡、存儲等;安全
數據庫基礎知識,包括交互語言(例如SQL)、模式、範式、事務、鎖等;網絡
數據庫運維技能,包括部署、備份、高可用、監控、遷移、排障、巡檢等;架構
數據庫性能調優技能,這是一項很重要的技能,包括慢查詢分析、索引優化、參數調優等。運維
以數據庫調優爲例,I/O是比較常見的性能瓶頸,想要實現最大限度的調優,不只要了解磁盤(硬件)的工做原理,瞭解操做系統的相關知識,還要掌握數據庫自身IO類調優參數。單這個方向而言,要學的知識和技術就很是龐雜的。性能
雲時代,化繁爲簡學習
隨着雲時代的到來,雲數據庫的應用與大規模普及,爲DBA帶來了很多積極的變化。雲數據庫具備免部署、高性能、高可靠性、以及強大的靈活性和擴展性等性能,能夠大大簡化DBA重複和瑣碎的平常工做。優化
1)免部署
雲數據庫一鍵部署,經過簡單的購買操做,分鐘級甚至秒級交付。雲數據庫種類豐富,關係型數據庫如MySQL、PostgreSQL、SQL Server,非關係型數據庫如MongoDB、Redis、Memcache,兼容和支持各類版本
2)高性能
雲數據庫軟硬件深度調優,具備理想的性能表現。同時,底層硬件較快引入最新高性能硬件,例如NVMe、Skylake、25Gb高速網絡等。雲數據庫多種性能加持下,DBA可聚焦在應用層優化。
3)高可用性
通常雲數據庫默認高可用架構,發生某些故障時,雲數據庫可以自動探測,及時容災,保證數據庫服務不中斷。以UCloud雲數據庫爲例,達到了99.95%以上的可用性,會自動支持跨可用區部署,容災級別更高。這樣,對於DBA來講,也不須要再額外部署高可用架構。
4)強大靈活性和擴展性
雲數據庫彈性擴展的能力,至少是支持垂直擴展(scale-up),一般也支持水平擴展(scale-out)。靈活性則是第三維度的擴展,它能夠支持一主多從,讀寫分離。DBA可以在短時間內聚焦業務,暫時不會有擴展性的煩惱。
5)自帶運維能力
雲數據庫一般支持自動備份和手動備份兩種模式,自定義備份策略,例如黑名單、備份時間段、備份源等。當出現誤操做時,雲數據庫通常會提供一鍵回檔的功能找回數據。並提供詳細的監控數據,web console展示大多數關鍵性指標,也可配置異常自動告警。能夠說,DBA對雲數據庫基本沒有運維工做。
6)安全可靠
雲數據庫在數據存儲、網絡鏈路訪問、鑑權認證、多租戶隔離方面作了多重保障,以確保數據安全,除此以外,它能夠支持數據庫審計,後端自動漏洞掃描,按期安全加固等。
7)自帶7*24小時專業DBA服務
這點很是貼心,當DBA或者研發遇到疑難雜症時,可讓雲數據庫的專家在線幫忙分析、解決,迅速閉環。專業服務還包括遷移上雲、架構諮詢、診斷、巡檢、性能調優等。
新時代,Get新技能
使用雲數據庫後,DBA能夠有更多時間關注其餘技能的鍛鍊和培養,提高本身的綜合競爭力,例如:
業務技能,在平常巡檢、管理維護和故障響應工做以外,須要有更多時間專一業務發展,能力向業務側轉型。
架構設計技能,學習、制定合理的數據庫架構,以支撐將來業務發展,要作到這點,挑戰仍是蠻大的,我的收穫也會不少。
軟件開發技能,掌握DevOps技術棧,與業務相結合,作SRE(Site Reliability Engineer)。
雲數據庫帶來諸多便利,使DBA工做內容發生了變化,但不論是通用技能仍是新技能,DBA的技能提高都是由淺入深,按部就班,須要靠業餘理論學習加上工做實踐逐漸成長和積累,這條路上沒有捷徑。最後,本文附上一份數據庫工程師技能成長圖譜,但願對諸位DBA XDJM有所幫助。
網站圖片壓縮會致使部份內容不清晰,感興趣的讀者能夠點擊連接免費下載高清電子版