我想做DBA,也就是数据库管理员,但是我不够强。我该怎么办?
DBA数据库管理员的要求:\x0d\这几年一直在和数据库管理员打交道,直接面试了很多DBA岗位。本文想总结一下IT行业对DBA的要求,以及国内DBA新资本的现状。可以肯定的是,成为一名高级DBA是一份非常好的职业。如果你打算成为一名DBA,那么我希望这篇文章能起到抛砖引玉的作用。\x0d\\x0d\什么是DBA\x0d\\x0d\数据库管理员,英文简称DBA。这个位置对不同的人有不同的意义。相对于分工高度细化的大公司,小软件开发工作室的DBA职责更广。一个公司,无论是自己开发应用软件,还是购买第三方的应用软件,只要涉及到数据库(有多少应用不涉及数据库?数据库是业务的灵魂和大脑),你需要决定是雇佣一个还是几个DBA。了解DBA职位的要求对于在企业内部定义这个职位或者对于那些未来的DBA来说是非常重要的。下面我列出DBA的一些职责:\x0d\\x0d\安装升级数据库服务器(如Oracle和Microsoft SQL server)和应用工具。数据库设计系统存储方案,并制定未来存储需求计划。一旦开发人员设计了应用程序,就需要DBA来创建数据库表空间。一旦开发人员设计了应用程序,就需要DBA来创建数据库对象(表、视图、索引)。根据开发人员的反馈,必要时修改数据库结构。注册数据库的用户,维护数据库的安全。确保数据库的使用符合知识产权相关法律法规。控制和监视用户对数据库的访问。监控和优化数据库性能。制定数据库备份计划,在灾难发生时恢复数据库信息,在适当的介质上维护存档或备份数据。备份和恢复数据库,联系数据库系统制造商并跟踪技术信息。DBA的性格特征\ x0d \ x0d \很多时候管理者忽略了DBA的性格特征,他们只关注DBA的技术能力。其实上面提到的每一项职责,都意味着DBA需要和各种各样的人打交道,可能是厂商,可能是用户,也可能是开发者,也可能是管理者。这说明一个DBA必须具备以下性格特征:\ x0d \ x0d \自信、好奇、坚韧的意志力、世故和自我驱动的对细节的关注。为什么这些性格特征很重要?\ x0d \ x0d \我有几个下属缺乏自信。他们对每件事都反复问我问题,他们没有信心做出哪怕是最小的决定。他们也缺乏工作的主动性。这对于初级DBA来说可能不是什么大问题,但是对于那些高级DBA来说,如果缺乏自信,又能依靠谁来帮自己做决策呢?在DBA的面试中,即使不能回答一个技术问题,也要表现出足够的自信。最致命的不是不知道问题的答案,而是不知道去哪里找答案。\x0d\\x0d\几乎所有的数据库系统都在不断更新。但并非所有更新都有技术文档。对于一个好的DBA来说,好奇心是必要的。没有好奇心和求知欲的DBA总是等着有人告诉他们答案。而一个好奇的DBA会安装最新版本的数据库系统,立即开始搜索功能和性能上哪怕是细微的差异和增强,从而改进自己的工作。考试时被问到的一个不可避免的问题是:你手头有什么参考资料?你如何使用它们?毫无疑问,如果你只回答数据库里的文档,或者你连看都没看过,你的“股票市值”就会大大下降。好奇心会驱使数据库管理员去理解数据字典、管理工具或其他包。\x0d\\x0d\ DBA经常会遇到棘手的问题。寻找答案是一种需要毅力,经得起摔打的性格特征。经常在一些讨论组或者论坛上看到DBA提出的问题。这些问题往往可以由提问者自己解决,如果他们有坚韧的个性,并试图找到问题的答案。\x0d\\x0d\自驾对每个人都很重要,尤其是DBA。DBA应该能够找到让问题出现的方法,而不是坐等问题出现。自我驱动的DBA经常试图获得或编写一些必要的脚本来监控包括表大小和表空间使用情况在内的项目。如果这些项目被忽视,他们将陷入困境。在参加考试时,DBA经常会被问到他们在PL/SQL、SQL或SQL*PLUS方面的经验。这些问题将把您与那些从未编写过所需脚本的DBA区分开来。\x0d\\x0d\不用说,即使是和程序员、经理打交道,你也需要足够老练。一个什么都不会的DBA,对你没有任何好处,只会点燃你部门的敌对之火。世故就是这样一种能力,你劝一个人去死,哈哈,最后这个人带着憧憬走了。很多时候,开发者、管理者、用户都会提出不合理的需求,需要DBA巧妙的引导、纠正、说服。参加考试时,你的反应可以告诉你是否老练。\x0d\最后,注意细节很重要。注重细节的DBA,衣着整洁,有自己的作息时间,考前对所报考的单位做过调研。注重细节的DBA对数据库的核心有着深刻的理解,能够理解视图和表之间的关系。\ x0d \ x0d \ DBA的等级\ x0d \ x0d \ DBA的等级不是很严格。根据我对数据库的了解,可以简单的分为初级、中级、高级三个级别。\x0d\\x0d\ junior DBA也叫DBBS,是英文Database Baby Sitter的缩写。初级DBA往往是兼职的。他们通常是程序员或者同时从事其他工作。初级DBA往往会写出优秀的简历,参与很多与数据库相关的项目或工作。但这些项目或工作往往是:第三方软件厂商已经安装配置了数据库,他们只做一些监控工作。他们可以处理一些简单的问题,但大多数时候他们会向应用软件供应商寻求帮助。初级DBA更喜欢图形数据库管理或监控工具。他们喜欢像Access这样的桌面数据库简单易用,并简单地将这些小型数据库的经验应用到与大型数据库相关的工作中。\x0d\\x0d\初级DBA最好区分。区分中级DBA和高级DBA并不容易。他们的不同在于经历不同,性格特点不同,能力不同。中级DBA很多,可以做高级DBA的大部分工作,包括:\ x0d \ x0d \数据库安装、数据库配置和管理权限设置、安全管理、监控和性能调整、备份和恢复、解决一般性问题。中级DBA往往工作一年左右,熟悉操作系统环境下的数据库。因为对于中级DBA来说,Windows NT和Unix差别很大。中级DBA熟悉SQL。他们买了几本关于数据库的书,并对它们进行了深入研究。中级DBA经常同时担任数据库程序员,对性能、稳定性、安全性的追求基本不是很高,经常配合高级DBA做一些日常工作。\ x0d \ x0d \高级DBA在国内非常少见。他们买了太多关于数据库的英文资料,可能是让朋友从亚马逊上买的。与他们的报酬相比,花在书上的钱是很小的一部分。资深DBA一般都熟悉很多操作平台下的几个大型数据库。他们知道不同数据库在不同环境下的优缺点,能够对数据库平台和数据库环境的选择做出决策。他们通常熟悉系统架构和数据库设计,并且能够在各个级别优化数据库。资深DBA一般都配有助理,助理更倾向于做决策和计划。在银行、保险、网上交易等对稳定性、安全性和性能要求较高的关键业务处理领域,高级DBA往往扮演着重要的角色。\x0d\\x0d\很多时候,取得数据库专家认证证书并不是很重要。我知道很多数据库厂商只要你去培训就会拿到证书。提供商业培训的公司很多,服务质量有好有坏。所以证书不是特别有意义。\x0d\\x0d\几种流行的数据库系统\ x0d \ x0d \最“容易”的数据库系统-Microsoft SQL Server \x0d\\x0d\如果你打算做DBA,建议你选择那些现在比较流行的数据库系统。这意味着你会有更多的就业机会、交流和培训机会,而且人缘好自有道理,可以省心很多。当然就业竞争压力也比较大。一般初学者选择微软SQL Server,这是一个非常适合中小企业的数据库系统。熟悉Access的读者可以很容易地初步使用Microsoft SQL Server,并成为DBBS。J\x0d\ Microsoft SQL Server 7.0的报价是5用户版1399美元,添加用户时每个用户127美元。\x0d\\x0d\最“难”的数据库-Oracle\x0d\\x0d\如果你有机会接触Oracle,那是个好机会。Oracle是目前最有前景的数据库厂商。由于其强大的功能和可配置、可管理的能力,Oracle DBA的工资普遍高于其他数据库管理员。而且Oracle在大中型企业中的关键应用也越来越普遍。Oracle可以运行在Windows NT、Sun Solaris、Linux等平台上。很多情况下,要求你不仅要熟悉NT,还要熟悉Unix。而甲骨文不友好的界面和成箱的甲骨文产品数据也可能是一个障碍。\x0d\ Oracle 8i标准版报价,如果运行在Windows NT上,带JServer和interMedia,支持5个并发用户,报价为每CPU 3925美元。添加并发用户时,每个用户785美元。当添加额外的指定用户时,每个用户为392.5美元。\x0d\\x0d\数据库系统的贵族——IBM UDB/DB2 \ x0d \ \ x0d \作为30年数据库研究的成果,IBM DB2确实可以称得上是“数据库系统的贵族”。无论是小型企业系统还是大型银行系统,使用DB2都可以高枕无忧。新发布的DB2 6.1版本,管理和调整工具更加优秀和易于使用。DB2可以在Intel体系结构或IBM的S/390大型计算机上运行。如果你所在的行业特别推崇IBM机器,建议你学习IBM DB2。\x0d\\x0d\ DB2有两个版本:工作组版和企业版。工作组版每台服务器999美元,每个并发用户249美元。企业版每CPU 12500,不限并发用户。\x0d\\x0d\以Java为中心的数据库-Sybase Adaptive Server Enterprise(ASE)12.0 \ x0d \ \ x0d \即将推出的Sybase ASE 12.0直接面向Java程序员。这种以Java为中心的数据库系统将是那些准备在Java平台下构建企业应用的企业的最佳选择。然而,ASE并不是数据库领域的领导者,尽管它比以前的版本改进了很多,支持多CPU和更多并发,并有许多新功能。但是Sybase的风光好像没有了。\x0d\\x0d\ Informix Centaur值得期待\x0d\\x0d\有时候“第一”只是意味着你的对手需要等待更长的时间才能赶上你。这正是成立于1997的Informix所面临的。Informix是首批向关系数据库系统添加多媒体特性的大型数据库供应商之一。但现在,IBM、Oracle、Sybase都跨越了这个概念。因此,Informix必须寻求新的支持,以区别于其他数据库供应商。这是Informix Centaur的目标。Informix Centaur结合了Informix Dynamic Server 7.3的对象关系数据库和Informix Universal Data Option 9.1,旨在更好的适应性和多媒体支持。具体情况如何,我们拭目以待!\x0d\\x0d\ DBA的薪资\x0d\\x0d\影响你作为DBA薪资的因素有很多:\x0d\\x0d\ DBA水平由你的经验和能力、你熟悉的数据库系统、你的性格特点和潜力决定。下表说明了国内DBA人员的基本工资以及你所熟悉的DAB水平和数据库系统对DBA的影响。当然,这只是我个人的认识,只能在一定程度上代表行业的平均水平。\x0d\\x0d\ DBA级数据库系统初级DBA年薪(万元)中级DBA年薪(万元)高级DBA年薪(万元)Oracle 4 8 1微软SQL Server 3 58 IBM DB2 4 8 10 Sybase 3.56 8 Informix 4 7 10注:年薪为65438。