分类: Oracle
2009-05-23 15:32:34
作为一个走了很多弯路的老DBA,我的感受是DBA的成长之路是有捷径的,在这条成长之路上,并不是所有的付出都会得到合理的回报。有的人会走的十分轻松,有的人却异常艰难。这和某个人的机遇有关,就像金庸武侠小说里面一样,有些人需要几十年修炼,才能有所突破,而主人公往往都是通过一些机缘巧遇,修成正果的。一个DBA在成长之路上,选择正确的方法,加入正确的团队,遇到正确的导师,就和金庸武侠里面遇到焊冰床或者吃了仙丹灵药一样重要。
要成为一个优秀的DBA,仅仅靠努力是不够的,还有很多因素决定了DBA的成功。个人的性格对于DBA来说是十分重要的。首先,DBA需要沉稳的性格,遇事不慌,做事有条理。DBA在工作中会遇到各种各样的挑战,因此面临挑战的时候,深思而后行是十分重要的,在没有足够的把握之前,不要做任何的事情,这是DBA的铁的准则。要养成这样的风格,先天而来的沉稳性格是必不可少的。当然某些风格可以后天养成,但是有些性格就是DBA的天敌。
我曾经遇到过一件事情,当时一个客户的系统有些问题,需要我们协助分析一下,找出系统性能问题的根本原因。我把任务安排给一个DBA去做,并且我嘱咐他只允许观察系统,不能做任何操作。第二天一大早,我刚刚开机,就有客户的电话打进来,说怎么系统不可用了。等我把忙了一晚上的那个哥们从梦里叫醒的时候,我才知道,原来他昨晚对一个近100G的表做了100%采样的全表分析。而分析在早上8点的时候还没有完成。事后我问那个DBA,为什么会做这种傻事。他说他也不清楚,开始的时候他是很清醒的,知道不能对这个系统做任何事情,但是后来他发现可能是这张表分析的采样比例不够,如果重新分析就可以解决这个问题,所以他就想试试,虽然他知道他不应该做任何操作,但是有一种冲动支配他,就是想试试,后来他做了测算,估计早上9点前能够完成分析,就这么做了。
上面的例子是个很典型的例子,那个DBA知道自己应该做什么,但是在好奇心的支配下,他还是做了错事,这是性格方面的缺陷导致的。DBA往往会在深夜独立工作,在这个时候,有些不理智的决定的产生往往是一个闪念,等你回过神来的时候,你可能发现大错已经铸就,一切都太晚了。作为DBA,面对生产系统的时候,任何的不理智都可能是你的职业生涯的终止,沉稳的性格对于DBA的重要性就可见一斑了。
从上一个例子我们还可以学习到的是作为一个DBA,不能过于自信。自信是一个DBA必须拥有的素质,在这方面,往往有两个极端。第一个极端是不自信,这是几乎所有的刚刚进入DBA行业的技术人员的通病,面对客户,不敢大声说话,不敢表达自己的观点。不自信主要来自于对自己的能力的不肯定,总是怕自己说错话。我总是和我的同事说,只要你的技术比客户强,那么你就是专家,你的话就是专家的话,你说的就是正确的。对于刚刚入门的DBA,建立强烈的自信心是十分关键的,不过这个过程也是很长的,根据每个人的能力和性格的不同,往往需要1年到几年的时间。少数DBA能够在很短的时间内建立自信,这主要取决于这个人的悟性,如果他能很快的从和客户的交往中了解到客户的水平,那么他可能可以很快建立起基于自己技术能力的自信心。缺乏自信会成为一道门,把你关在一个成功的DBA的门外,因此建立充分的自信是成为优秀DBA的第一步。
和缺乏自信相比,过度自信是十分危险的,缺乏自信只是很容易被客户小看,并不会有太大的危害性,而过度自信是大多数失误的罪魁。很多老DBA总是说做DBA越久,胆子越小。应用系统是十分复杂的,并没有一定之规可循。所以老的DBA总是怀疑自己的判断是否完全准确。而过度自信往往出现在正在成长期的新DBA身上,在成功的完成一些项目后,自信心的增长也是十分快的,自信心增长一般来说是个好事,但是在自信心增长的同时,保持必要的谨慎是十分重要的。
除了稳重和自信,DBA的下一个必备的性格是团队精神。现代社会已经不是单打独斗的骑士时代了,做任何事情都是一个团队在工作。团队协作可以大大降低DBA工作的强度,减轻DBA面临的压力。作为一个DBA,不应该有孤独的感觉,因为是一个公司,一个团队在做这个工作。在现场的DBA可以通过各种渠道获得其他团队以及公司总部资深团队的后援。在这种情况下,遇到任何问题都不会感到无能为力。团队精神的另一个方面是体现在团队学习上。 团队学习也可以使DBA的成长速度加快,所谓的团队学习是和我们上学的时候一样,一群人一起学习。和上学时代不同的是,DBA的团队学习更有效率。比如说目前有3个知识点需要学习,如果个人学习,需要3个月。那么如果有一个团队,3个人一起学习,可以用一个月完成一个知识点的学习,然后通过一个月时间,大家互相交流,那么2个月的团队学习可以达到3个月个人学习的效果。
求真精神是成为高级DBA的必备素质,任何时候,都必须用求真的精神去对待。目前关于DBA的资料充斥着互联网,在学习过程中,一定不要盲目相信他人,凡事应该认真求证,最好能够自己进行实验。我碰到过很多朋友,遇到问题无论是否是十分重要的生产库还是测试库,都是直接到网上去查找一些解决方案,找到相关资料后,没有进行认真的甄别,就急急忙忙的去操作,最后导致了十分严重的后果。敢于质疑一切的精神是十分宝贵的。DBA的学习过程是一个不断质疑,不断求真的过程,只有用怀疑一切的态度去学习,才能够不断的深入探索,达到至高境界。