• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: | 推荐给好友 上一篇 | 下一篇

讲解数据库管理员(DBA)与开发人员的关系

发布: 2008-7-03 10:20 | 作者: 网络转载 | 来源: 本站原创 | 查看: 51次 | 进入软件测试论坛讨论

领测软件测试网  有一点很肯定,要建立最成功的信息系统,前提是DBA与应用开发人员之间要有一种“共生关系”。在这一节里,我想从开发人员的角度谈谈开发人员与DBA之间的分工(假设所有正式开发都有DBA小组的参与)。

  作为一名开发人员,你不必知道如何安装和配置软件。这应该是DBA或者系统管理员(system administrator,SA)的任务。安装Oracle Net、配置监听器、配置共享服务器、建立连接池、安装数据库、创建数据库等,这些事情我都会交给DBA/SA来做。

  一般来讲,开发人员不必知道如何对操作系统调优。我个人通常会让系统的SA负责这个任务。作为数据库应用的软件开发人员,应该能熟练地使用你选择的操作系统,但是不要求你能对它调优。

  DBA最重大的职责是数据库恢复。注意,我说的可不是“备份”,而是“恢复”。而且,我认为这也是DBA惟一重要的职责。DBA要知道回滚(rollback)和重做(redo)怎么工作,不错,这也是开发人员要了解的。DBA还要知道如何完成表空间时间点恢复,这一点开发人员不必介入。如果你能有所了解,也许以后会用得上,但是作为开发人员目前不必亲力而为。

  在数据库实例级调优,并得出最优的PGA_AGGREGATE_TARGET是什么,这一般是DBA的任务(数据库往往能帮助他们得出正确的答案)。也有一些例外情况,有时开发人员可能需要修改会话的某个设置,但是如果在数据库级修改设置,就要由DBA来负责。一般数据库并不是只支持一位开发人员的应用,而是运行着多个应用,因此只有支持所有应用的DBA才能做出正确的决定。

  分配空间和管理文件也是DBA的工作。开发人员可以对分配的空间做出估计(他们觉得需要多少空间),但是余下的都要由DBA/SA决定。

  实质上讲,开发人员不必知道如何运行数据库,他们只需要知道如何在数据库中运行。开发人员和DBA要协同解决问题,但各有分工。假设你是一位开发人员,如果你的查询用的资源太多,DBA就会来找你;如果你不知道怎么让系统跑得更快,可以去找DBA(如果应用已经得到充分调优,此时就可以完成实例级调优)。

  这些任务因环境而异,不过我还是认为存在着分工。好的开发人员往往是很糟糕的DBA,反之亦然。在我看来,他们的能力不同、思路不同,而且个性也不同。很自然地,人们都爱做自己最喜欢的工作,而且能越做越好,形成良性循环。如果一个人比较喜欢某项工作,他会做得更好,但是这并不是说其他工作就一定做得很糟。就我而言,我觉得我更应算是一位开发人员,但兼有DBA的许多观点。我不仅喜欢开发,也很喜欢“服务器方面”的工作(这大大提高了我的应用调优水平,而且总会有很多收获)。

延伸阅读

文章来源于领测软件测试网 https://www.ltesting.net/

TAG: dba DBA 关系 讲解 开发 数据库管理员


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备2023014753号-2
技术支持和业务联系:info@testage.com.cn 电话:010-51297073

软件测试 | 领测国际ISTQBISTQB官网TMMiTMMi认证国际软件测试工程师认证领测软件测试网