- 相關推薦
DBA需要掌握的專業技能
數據庫管理員(Database Administrator,簡稱DBA)是一個負責管理和維護數據庫服務器的人,其職責是一般監視、備份、修改密碼、深層次管理和研究等。下面陽光網小編就為大家整理了DBA需要掌握的專業技能,歡迎查閱。
DBA需要掌握的專業技能(一)
DBA, 通俗點說就是數據庫管理員, 所以, 數據庫的知識肯定是必不可少的:
對數據庫的操作而言, 無外乎SQL語言, 因此, SQL語言是基礎中的基礎
DBA一方面要根據需求在數據庫中實現, 另一方面要指導非數據庫專業人士在數據庫中完成他們想實現的東西, 如果實現不了, 或者非專業人士能實現但你不能實現, 那可是丟人到家.
所以, 對于SQL語言來說, DDL和DML都要掌握的, 而且不能僅限于一般的掌握程度, 不能說公司的業務不需要臨時表, 你就連臨時表怎么用, 有幾種, 有什么區別都搞不懂.
能實現需求, 只能說明你是對數據庫有些了解了, 對于同一種需求, 你能列出多種方法, 并能評判其中的優劣(不是根據行規或者大家的習慣), 這樣才有些DBA的架勢. 這就需要你了解數據庫架構方面的知識(架子搭不好, 房子再漂亮也沒有用), 知道SQL的一些底層知識, 比較, 大家都知道索引對提高查詢性能十分重要, 但過多的'索引也會對數據處理造成負擔, 如果你不了解索引的一些原理及sql使用索引的原理, 你如何能合理地建立索引呢?
能夠有效地實現需求了, 接下來就該維護了. 再好地數據庫架構, 也要經常維護和保養, 比如, 原來很有效的索引, 因為索引碎片多了, 讀取性能就差了, 因為業務的變化, 有的索引該刪除了, 重要的數據, 是否在不該丟的時候絕對不會丟了, 敏感數據, 是否會被不該訪問的人看到了. 這一系列的東西, 除了要調查/分析/并制訂出一套完整的方案外, 還需要相關的知識來實施這套方案,
日常維護, 問題少不了會遇到, 這些問題除了SQL的問題外, 還有是跟系統或者網絡相關的, 甚至是程
序中出現的問題需要調試, 所以操作系統+網絡+程序設計語言, 多少得懂點
為了管好數據庫, 特別是管理好多臺服務器, 多少你還得寫些工具來輔助你完成任務.
從上面來說, DBA需要的技能大致是:
@1. 數據庫知識(熟練級別)
SQL語言(DML, DDL, 備份/恢復/管理), 數據庫結構知識, 數據庫運作原理
@2. 熟練至少一種數據庫, 了解其他數據庫(有一定應用能力)
很少有不與其他類型數據庫交互的數據庫, 如果你只熟練一種數據庫, 當需要與其他數據庫交互時, 你住往會無從下手
@3. 綜合能力(有一定的應用能力)
程序設計能力, 操作系統, 網絡, 安全
DBA需要掌握的專業技能(二)
1、 創建、優化、修復數據庫和熟悉數據庫管理平臺
這一點可以說是比較基礎的技能,也是需求應用最為廣泛的操作點,我們一般情況下,很多網站都是使用mysql數據庫來跑網站,搭建網站環境并創建高可靠性的數據庫自然是第一步,mysql數據庫很明顯的一個特點就是需要不定時的修復表碎片,我們的DBA可以通過sql語句來實現,也可以通過一些數據庫管理平臺來實現,目前比較流行的phpmyadmin就是其一,當然如果選用阿里云RDS就要對[font=微軟雅黑, 'Microsoft Yahei', 'Hiragino Sans GB', tahoma, arial, 宋體]iDB Cloud足夠熟悉,掌握這些才算是一個DBA的入門。
2、數據升級、搬家和調試
數據庫升級是經常遇到的事情,我們傳統的方式是通過shell工具下載并安裝升級,DBA應當能夠根據技術總監要求和網站實際情況是否需要升級并及時操作,阿里云RDS在這方面直接是可以實現一鍵升級嗎,是十分方便的。
不可忽視的還有一點就是數據的.搬家和調試,我們在網站運營過程中,由于各種問題,可能會遇到網站搬家或者單獨數據庫搬家的情況,DBA能應技術總監安排,將數據庫完整無誤的搬家到新的實例并調試,確保網站運行無誤。
3、備份和回溯
這一點十分必要,數據庫的備份甚至網站的備份都是相關管理人員的重要職責,在網站出現故障,數據丟失的情況下,能夠通過備份數據將網站恢復到最近一次的穩定狀態就能夠極大的挽回網站因 本體數據帶來的損失。還有一種常見情況是對于數據的誤刪除或修改,如要精確恢復,這就不是定期備份能夠解決的事情了,我們可能需要將數據精確的恢復到某個時間點上,這樣的數據回溯要求相對更高,還好,RDS的binlog就能夠完美解決這一問題,這一點是值得一提的。
4、保證數據庫的安全和高可用性
數據庫安全和高可用性是能比較直觀的反映出DBA稱職程度的,對于技術總監來說,我們當然希望擁有一個安全穩定的數據庫氛圍,如果經常出現”建立數據庫連接時失敗“這種情況,無疑要對DBA發火了。諸如一些sql注入攻擊、批量請求等DBA盡量能夠防止和攔截掉,不能讓我們的數據庫不堪一擊,無法扛住普通的攻擊和壓力,這一點直接關乎到實例的日常用戶體驗。
5、對數據庫有良好的資源、狀態監控措施,做好適當的調整
DBA的技能其中一塊還要監控數據庫的實時性能以均衡資源、適時調整。我們的數據庫都是從軟硬件兩方面出發的,硬件一些參數對于數據庫的響應速度、讀寫增刪改的反應敏捷性都是有影響的。能夠實時監控磁盤容量、帶寬、cpu、鏈接數和讀寫量并根據對應的數據提出調整意見,配合其他研發人員進行軟件程序上的調整或者硬件性能上的升級是DBA的職責之一,大多數網站都要求自己的網站需要7*24小時不間斷的運行,這樣,也對DBA提出了更高的要求——實現24小時不間斷的軟硬件資源、數據狀態監控,并及時反饋建議和適當調整。
DBA需要掌握的專業技能(三)
熟悉PERL編程;較強的SQL編程功底;
工作職責:
1、參與和協助完成業務系統數據庫設計、規劃和調優;
2、探查數據庫系統潛在的問題和可能的性能瓶頸,并進行優化;
3、負責SQLServer數據庫的日常維護、備份及恢復;
4、為開發人員提供技術指導和支持;
5、維護線上業務核心數據庫的7*24安全、穩定運行。
任職資格:
1、精通SQLServer數據庫的運行機制和體系架構;
2、精通SQLServer數據庫的`管理和性能調優,精通SQL語句,具備豐富的SQL語句優化經驗,,內核優化、建表、表空間、索引等優化經驗;
3、精通SQLServer數據庫備份與恢復;
4、熟悉SQLServer數據庫集群構建、數據庫設計與應用,根據應用需求能設計有良好容錯能力的數據庫系統;
5、2年以上數據庫管理經驗,有大型互聯網數據庫架構經驗優先。
6、實際使用過至少一種主流NoSQL數據庫,例如MangoDB。有此經驗優先。
職位描述:
1、參與公司技術架構中數據庫部分的規劃和設計;
2、解決公司軟件產品或者項目開發和運維中和數據庫相關的問題;
3、負責客戶數據庫技術架構設計、平臺構建和實施;
4、維護客戶ORACLE、DB2等數據庫服務器運行,處理雙機環境、RAC集群、備份以及運行中突發問題
崗位要求:
1、計算機、電子信息技術及其相關專業,3年以上數據庫開發管理經驗;
2、熟悉oracle、DB2數據庫的體系結構;
3、熟悉主流的數據庫設計工具,能夠獨立完成事務型產品或者項目的數據庫需求分析、結構設計;
4、熟練掌握數據庫開發,復雜SQL、存儲過程、函數等,具備較強的數據庫編程功底和清晰的邏輯思維能力;
5、熟悉ORACLE和DB2數據庫系統,能處理運行過程中出現的問題;
6、具備一定的數據庫問題診斷及調優能力,特別是Oracle數據庫管理,數據庫集群,數據庫分析及調優;
7、熟悉Tomcat,weblogic,Websphere中間件部署,熟悉Linux操作系統;
8、良好的表達溝通能力,有Java開發經驗。
【DBA需要掌握的專業技能】相關文章:
需要掌握的面試技巧介紹12-09
人事干部講話需要掌握的分寸12-07
市場營銷需要哪些專業技能12-02
面試自我介紹需要掌握原則12-05
創業者需要掌握什么能力12-09
澳大利亞留學申請需要掌握的技巧04-02
考研政治需要掌握好以下復習方法12-09
大學生面試需要掌握的基本禮儀12-09
高考志愿填報考生需要掌握的幾大信息12-09