作爲一個MySQL DBA,必須具備如下的素質:html
一, 身體素質 算法
DBA必須接收和處理各類報警,不管是中午在吃飯或者凌晨三點已經進入深度睡眠。接到報警須要當即進入應急狀態,找到電腦,聯上網絡,快速定位故障緣由,並解決之。睡眠很差的同窗不太適合當DBA,由於半夜處理故障後很難再次入睡,長期會嚴重影響生活質量。sql
另外,在搶修大型故障的時候,可能須要很長時間,沒有好的身體很難堅持。shell
二, 心理素質數據庫
1 沉穩編程
凡是涉及到數據庫的事沒有小事,DBA必須具備「卒然臨之而不驚,無端加之而不怒」的心理素質,在遇到突發事件時,不慌不亂,有條有理的處理。要意識到,事情既然已經發生了,DBA要作的就是發揮本身最大的能力恢復能恢復的一切。服務器
2細心網絡
MySQL DBA的操做不少都是高危操做如刪除廢庫表,切換主庫。稍有不慎,就可能引起一級故障。所以不能放過任何一個細節或者小問題。數據結構
3 嚴謹架構
DBA必須有強的計劃性和條理性,必須明白一段時間內事情的輕重緩急並制定計劃,在作任何線上操做時必須嚴格按照操做步驟,完成每一步都須要檢查甚至交叉檢查,不報任何僥倖心理。
4 開放學習
MySQL的版本不斷升級,各類分支和插件層出不窮,NOSQL數據庫也風起雲涌。要求咱們有開放的心態去學習和借鑑。要勤於學習,善於學習。最重要的是不要對其它數據庫技術有排斥心理。
三,專業素質
1 必須理解計算機體系架構
2 必須理解操做系統與Linux內核
3 必須理解硬件特別是存儲
4 必須會使用shell和一種以上的其它腳本語言:Python,Perl,PHP
5 必須懂C,C++語言,不然沒法理解源碼
6 必須理解關係型數據庫理論
7 必須熟練Linux系統管理
8 必須熟練1到2種數據庫查詢語言如TSQL,PLSQL等
9 必須理解NOSQL的基本概念和原理,瞭解1到兩種NOSQL如Redis,MongoDB,TT,Cassandra等
總體狀況以下圖所示:
推薦書目:
計算機架構體系:深刻理解計算機系統(原書第2版) 數據結構、算法: 大話數據結構
算法導論(原書第2版)
關係型數據庫理論:
數據庫設計解決方案入門經典
SQL結構化查詢語言:
SQL編程風格
操做系統:現代操做系統(原書第3版)
硬件:大話存儲2:存儲系統架構與底層原理極限剖析
Linux系統管理:
鳥哥的Linux私房菜:基礎學習篇(第3版)
Linux內核分析:深刻理解LINUX內核(第3版)
Shell:Shell腳本學習指南
Perl:Perl語言入門(第五版)
Python:Python核心編程(中文 第二版)
Oracle:
MySQL:
MSSQL:
SQL Server 2005性能調優
C、C++:
C++ Primer中文版(第4版)(特別版)
源碼分析:
MySQL技術內幕:InnoDB存儲引擎
NOSQL:
MongoDB 權威指南
創業及其它:
參考:http://blog.csdn.net/lin_credible/article/details/8362605