作为一个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