首页 > 数据库, 职业生涯 > 如何成为一名合格的MySQL DBA

如何成为一名合格的MySQL DBA

2015年4月30日 870 views 发表评论 阅读评论

我曾经做过研发、也做过系统管理员、也做过Oracle DBA,至今从事MySQL也有7年时间,从一名Oracle DBA转型为一名MySQL DBA,从传统领域到互联网公司,我想分享给读者一些自己心得,成为一名MySQL DBA并不难,MySQL DBA并不神秘,也容易入门,但成为一名高水平的DBA需要时间,希望我的经历能给大家一些启动,希望热爱数据库技术的同学少走弯路。

2008年,在经历了多年的传统行业之后,我因为机缘巧合进入了移动互联网行业。角色也从专职 Oracle DBA 过渡到了Mysql DBA。MySQL当时不太懂,但以前做Oracle DBA的时候也做过一些MySQL的测试,慢慢就熟悉了。互联网公司的MySQL DBA对比传统行业的DBA工作节奏会快些,所需面对和处理的事情也不一样了。传统的行业,许多Oracle DBA会更偏向网络、存储、小机、OS,Oracle自身产品够强大,很解决很多问题 ,但在互联网行业,Mysql DBA会需要更前进一些, 参与系统架构的评审,和研发团队、监控团队、甚至是运营团队、产品团队互动。

如何做一名合格的MySQL DBA呢,我觉得首先要问自己一个问题,你是否适合做一名DBA。从事DBA工作,往往意味着你需要7*24小时待命,意味着你会承受比其他职业更大的心理压力,有时你可能需要在工作之外升级服务。除了知识、技能的考虑,我们更需要的是心理素质,你需要胆大心细,遇事冷静,这会让你在处理故障的时候表现得又稳又好。

作为一名DBA,我们往往需要其他领域的知识,用户访问应用服务,往往经历许多环节,DBA不一定精通每个环节,但对离自己最近的环节,都应该熟悉、甚至精通,比如,数据库与操作系统联系非常紧密,要求我们对操作系统很熟悉,数据库很大一部分调优,都是对存储系统进行调优,我们也需要对磁盘系统,RAID等技术很熟悉,同时,DBA必须理解应用软件的行为,如果你不了解应用,不了解应用系统的架构,你就难以提出有效的建议给研发人员,DBA不能仅仅维护自己的数据,还应该能给研发人员、系统架构人员足够的好多建议,协助创建出可靠的、健壮的应用程序。所以DBA往往需要熟悉硬件、操作系统、应用开发,一般DBA会有系统管理或者研发的背景,不同的DBA可能关注的面不一样,如果你有两方面的背景会更好。

作为DBA,必然应该对自己使用的产品很熟悉,我们作为一名MySQL DBA,应该深刻了解InnoDB引擎的行为,它是如何工作的,它有哪些特性,这样我们才能充分利用它。你需要熟悉关系数据库理论,熟悉查询语言,

作为一名DBA,你需要乐于接受挑战,数据库的性能诊断调优、故障处理,往往需要你在很短的时间内处理完毕,你也可能碰到短期内你解决不了的问题,如果没有一种迎接困难,有困难就上的心态,你难以获得别人的认同,也无助于团队的成长。或者说,如果碰到困难,你出错了怎么办?考虑到严重的后果,你是否仍然愿意接受这个挑战呢?

作为一名MySQL DBA,你需要注重团队协作,MySQL数据库对于应用程序、系统架构甚至是前端依赖很深,如果你的应用程序写得不好,或者你的WEB服务器,或者你的前端设计有问题,可能最终会反映或者被人误以为是数据库的性能问题,我们需要熟悉和不同领域的人士打交道,很多时候,从其他团队、部门着手,会让问题得到更快的解决。

作为一名MySQL DBA,你需要密切了解趋势,比如一些NoSQL产品,如Redis、TokuMX。在一些特殊的场合,在数据规模在增大后,你需要NoSQL产品来存储不同的数据,以充分发挥组合的优势。

以上几点,我想是作为一名合格的MySQL DBA需要具备的,当你成为了一名合格的DBA,你会发现有更多的挑战等着你。

 

 » 如果喜欢可以: 点此订阅本站
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.