DBA 是數據庫管理員(Database Administrator)的簡稱,是從事管理和維護數據庫管理系統(DBMS)的相關工作人員的統稱,屬于運維工程師的一個分支。
DBA 主要負責業務數據庫從設計、測試到部署交付的全生命周期管理,它的核心目標是保證數據庫管理系統的穩定性、安全性、完整性和高性能。
在國外,也有公司把 DBA 稱作數據庫工程師(Database Engineer),兩者的工作內容基本相同,都是保證數據庫服務24小時的穩定高效運轉。
DBA 與數據庫開發工程師不同,DBA 的主要職責是運維和管理數據庫管理系統,側重于運維管理。而數據庫開發工程師的主要職責是設計和開發數據庫管理系統和數據庫應用軟件系統,側重于軟件研發。
DBA 主要負責以下幾個方面:
* 設計數據庫,包括表和字段
* 監視監控數據庫日志
* 數據庫備份與恢復
* 數據庫用戶密碼和權限的管理/數據庫安全
* 檢查 SQL 語句是否符合規范
對 DBA 而言,掌握數據庫的基本知識是必不可少的。從數據庫的操作角度而言,SQL 語句才是基礎中的基礎。 DBA 一方面要根據需求在數據庫中實現某些功能,另一方面要指導非數據庫專業人士在數據庫中完成他們想要實現的功能,所以,數據庫中很多細節性的東西都需要 DBA 去掌握。
另外,還需要了解數據庫架構方面和 SQL 底層的一些知識。例如,一般情況下,學過數據庫的人都知道索引對提高查詢性能十分重要,但卻不知道過多的索引也會給數據的處理帶來負擔。如果不了解索引的內部實現機制以及 SQL 使用索引的原理,那么就無法合理地創建索引。
在實現了用戶的需求后,接下來的工作就是維護。再好的數據庫架構,也需要經常被維護和保養。例如,原來很有效的索引因為索引碎片的增多,讀取的性能就會下降。因為業務的變化,有的索引被刪除,我們要保證重要的數據不會丟失,敏感的數據不會被不該訪問的人訪問。這一系列的問題,除了要調查、分析,并制訂出一套完整的方案外,還需要相關的知識來實施這套方案。
日常維護的過程中會遇到非常多的問題,這些問題除了 SQL 的問題外,很多是跟系統或者網絡相關的,甚至是程序中出現的問題需要調試。所以,對于一名優秀的 DBA 而言,操作系統、計算機網絡與通信、程序設計語言等相關知識都需要有所涉獵。
為了管理好數據庫,特別是管理好多臺服務器,DBA 有時也需要編寫工具來輔助完成任務。所以,懂 Shell 或 Python 也是必不可少的。
通過上面的分析,可以得出 DBA 需要的技能如下:
1. 熟練掌握數據庫知識,包括 SQL 語言、備份、恢復、管理、數據庫結構知識、數據庫運行原理。
2. 至少熟練掌握一種數據庫,了解其他數據庫(有一定應用能力)。實際應用中,很少有不與其他類型數據庫交互的數據庫,如果只熟練掌握一種數據庫,那么當需要與其他數據庫交互時,就會無從下手。
3. 綜合應用能力,有一定的程序設計能力,包括操作系統、網絡與安全等知識。
DBA 主要有 ORACLE、MySQL、DB2、SQLSERVER 等方向。按照簡單容易上手依次排為 SQL SERVER、MySQL、ORACLE。這里對 DB2 不做解釋。
SQL SERVER 建議大家學習 .NET,MySQL、ORACLE 建議大家學習 JAVA。因為 SQL SERVER 和 .NET 是一家公司的,MySQL,ORACLE 和 JAVA 是屬于一家公司的,數據接口都比較方便,兼容比較好。
- 數據庫入門
- 1.常用的數據庫
- 2.數據管理技術的3個發展階段
- 3.數據庫是什么?關系型數據庫和非關系型數據庫又是什么?
- 4.為什么要使用數據庫?
- 5.數據庫系統是什么?它由哪幾部分組成?
- 6.常用數據庫訪問接口簡介
- 7.數據庫的種類有哪些?
- 8.幾種常用的數據庫
- 9.MySQL是什么
- 10.MySQL適用于哪些場景?
- 11.學MySQL前,需要了解這些數據庫專業術語
- 12.MySQL客戶端和服務器架構(C/S架構)
- 13.明白了MySQL內部結構才能成為高手!
- 14.如何學習數據庫(新手必看)?
- 15.小白學習MySQL需要多長時間,能從事哪方面的工作?
- 16.當前市場對數據庫程序員的需求如何?待遇如何?
- 17.DBA到底要做什么,成為一名DBA需要具備什么能力?
- 一、數據庫的概念和常用工具
- 二、MySQL規范、配置及登錄退出操作
- 三、MySQL中的數據類型
- 四、數據庫增查改刪等操作
- 五、數據表增查改刪操作
- 六、MySQL數據增查改刪操作
- 七、MySQL存儲引擎
- 八、MySQL常用函數
- MySQL的安裝和配置
- 1.MySQL 5.7的新特性(新功能)
- 2.MySQL下載步驟詳解
- 3.MySQL安裝配置教程(Windows系統)
- 4.MySQL免安裝版配置教程
- 5.MySQL配置環境變量
- 6.安裝MySQL后,如何判斷是否已安裝成功
- 7.啟動MySQL服務的兩種方式(圖解)
- 8.登錄MySQL數據庫
- 9.對Linux MySQL軟件包的一些說明
- 10.Linux CentOS卸載MySQL(Linux安裝MySQL前的準備)
- 11.Linux安裝配置MySQL詳細步驟
- 12.MySQL my.cnf配置文件詳解
- 13.MySQL常用圖形化管理工具
- 14.MySQL安裝后的目錄結構介紹
- 15.MySQL數據庫文件存放目錄結構詳解
- 16.MySQL配置文件(my.ini)詳解
- 17.與其它數據庫不同,MySQL可以在不同的SQL模式下運行
- 18.MySql Command Line Client閃退原因及解決方案
- MySQL數據庫的基本操作
- 1.SQL是什么?它能做什么?
- 2.SQL的基本書寫規則
- 3.MySQL查看或顯示數據庫(SHOW DATABASES語句)
- 4.MySQL創建數據庫(CREATE DATABASE語句)
- 5.MySQL修改數據庫:ALTER DATABASE用法簡介
- 6.MySQL刪除數據庫(DROP DATABASE語句)
- 7.MySQL選擇數據庫(MySQL USE語句)
- 8.MySQL注釋:單行注釋和多行注釋
- 9.MySQL中SQL語句的大小寫規則
- 10.如何查看MySQL系統幫助?
- 11.看懂SQL錯誤代碼,提高學習效率!
- 數據庫高級
- 一、視圖的操作
- 二、觸發器的操作
- 三、事務的操作
- 四、索引的操作
- 五、存儲過程的操作
- 六、數據庫的優化方案
- 1.分庫、分表和索引
- 2.讀寫分離和查詢優化
- 3.join代替子查詢
- 4.盡量使用短小的事務
- 5.常用小技巧
- MySQL使用注意事項
- 1.字符亂碼及連接驅動