我眼里的DBA.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
我眼里的DBA

我眼里的DBA 作者:?dba_huangzj??来源: CSDN??发布时间: 2014-07-24 11:36??阅读: 3672 次??推荐: 30???原文链接???[收藏]??   在专职DBA工作一年过一个月以后,开通了CSDN的博客专栏,在第一篇文章中,我谈谈一年DBA生涯的感想,虽然我是SQL Server的DBA,但是我觉得本文适合所有DBA,顺便把这篇文章作为个人真正DBA的开端和指引:   为什么要有DBA?   对于大量小公司,是请不起DBA,而且也不是非常必须的。那么DBA这个职业是如何产生的?我也不懂,个人的猜测是,当你的应用系统和数据库到达一定程度,就会面临很多问题,专业术语称之为:瓶颈。   面对瓶颈,很多有经验的开发人员或者其他岗位的人,可以应付,但不能保证都能应付,或者很好地解决,往往都只是治标不治本。因此,需要一个专职人员负责这部分工作。类似于系统管理员。试想你的公司有100台服务器,上面有若干个操作系统(虚拟机可能会导致更多数量)。一个开发人员面对无休止的开发进度,就算有心,也无力。   对于具有一定规模的企业,拥有一定数量的DBA和系统管理员是非常必要的。这能保证你的企业正常运作的前提下,达到各方面的最优化。   何为DBA?   毕业4年,做了3年开发,1年DBA,萌生成为DBA是在第二年末,看到DBA的前景比较好(有些地方把DBA描述成中医,年纪越大越值钱,其实很有道理,经验的确需要时间和经历去积累),工资也相对高很多,并且在公司的地位也相对比开发人员高。加上个人开发水平不高,所以最终决定转型为DBA,当时何为DBA?如何成为DBA?这些都还没弄懂。   后来,经过自己的坚持,终于当上了一个专职的DBA,从此开始自己的职业生涯。成为了DBA,面对的第一个问题就是:什么是DBA?其实就是说,要做些什么,才算一个DBA。   DBA,中文:数据库管理员,如其名,管理数据库的人,但是仅仅这样分析是不全面的,因为数据库作为信息系统的核心,有着无法比拟的重要性。我的上司说过,DBA和系统管理员才是公司的核心,程序没了,上传一份就可以了,服务器挂了,重装系统甚至买过硬件,也可以解决,但是数据库没了(其实就是数据没了),对产品提供商或者客户,都是毁灭性的打击。不是每类数据都能重现或者重建。   所以,作为DBA 首先,要有过硬的数据库知识,包括管理、设计、开发等等。 其次,要懂得足够多的或者说最起码的服务器管理知识,操作系统知识,因为你的数据库管理系统是运行在操作系统上的。 再者,由于绝大部分数据库系统都配有前端应用程序,所以必要的程序语言要达到最起码的了解级别。 还有,无论是外网还是内网系统,只要预算不会非常缺,一般数据库服务器不应该存放任何其他应用。这种情况下,往往都是通过网络传输来实现整个系统的应用和管理,所以网络知识也是必要的。 最后,DBA不仅仅要和硬件、代码打交道,也要和人打交道,试想如果你不懂得如何告诉开发人员某些功能存在问题,或者你不懂得如何向领导汇报,那么你的工作就会事倍功半,甚至有反效果。   能满足上面五点要求,你可以称自己为“初级DBA”。至于中级、高级,那些的要求就很苛刻了。在此先不谈。   在我个人的工作经验看来,DBA的工作粗略分为两种:【管理】和【优化】。当然,这两部分相辅相成又互相制约,不应该独立看待。????   对于【管理】: 首先,当然要让服务器稳定、安全地运行。并且保证各方面的配置都能达到局部最优化。这里之所以说局部,是因为根据我的经验,没有一成不变的教条,也没有所谓的绝对最优,只有最合适的方案。所以不要对一个执行几乎不花时间的查询花大力气的优化,除非你发现这个查询具有重大隐患。光是稳定和安全就已经有非常多的学问,将在后续穿插讲解,另外,这两点你要尽可能地向系统管理员学习。不求你有他们的等级,但是要尽可能接近,毕竟他们只需要关系服务器和操作系统,你除了这些之外还要关心数据库。 然后,要充分利用好现有资源,除了政府和银行这些企业之外,一般的企业就算再大,预算也是有限的,而且对于不懂计算机的人来说,可能觉得服务器、软件等等都只是支出而不是收入,所以往往都看的比较轻。绝大部分DBA都必须面临有限的资源。但是往往这就是你发挥的地方。很多开发人员不重视性能,总是写一些“能用”的功能,最后往往因为资源不足而运行失败。作为DBA,要把这些程序优化,使其达到一个【少】字,这部分放到优化说。 最后,要做好应急措施,往往问题就在你以为不会发生的时候发生。所以DBA首要任务是做好数据库的备份(包括系统数据库)。然后就是做高可用,使得数据库能尽可能地保持不停机运作。然后就是做好一些自动化操作,比如自动、定期重建索引、清理备份文件等等。如果要细化DBA的工作事项,恐怕一万字都远远

您可能关注的文档

文档评论(0)

yaobanwd + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档