首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么数据库管理这么难?

为什么数据库管理这么难?
EN

Database Administration用户
提问于 2011-05-24 13:33:39
回答 15查看 73.2K关注 0票数 92

我知道很多数据库管理员,他们都在28到29岁以上。

所有的数据库管理都是这样的吗?我是说,这是为了获得至少7-8年的经验吗?

还是做数据库管理员太难了?

EN

回答 15

Database Administration用户

回答已采纳

发布于 2011-05-25 00:26:47

这一职位需要广泛的知识,从发展到系统管理,甚至管理。DBA不仅必须了解备份、恢复、内部操作、内存和安全性,还必须了解如何与开发人员和管理人员进行通信。DBA可以向管理层提供高级演示,帮助开发人员优化查询,为新系统提供磁盘空间,并在同一小时内从备份中恢复数据。这些责任需要丰富的知识,很少有重叠。

对于DBA来说,失败的后果通常比开发人员更大。DBA通常支持数十个甚至数百个不同的应用程序和系统,其中大多数对公司的成功至关重要。安全漏洞、恢复失败或性能问题可能会产生深远的破坏性后果。这需要一定程度的知识和经验,这是不可能在短时间内获得的。

DBA做得越好,他们的能见度就越低。具有安全、可恢复、可用和性能良好的数据库的DBA将缺乏认知度。当出现问题时,DBA会被注意到。当他们的问题是自己造成的时,他们不仅会被注意到,而且当数据库由于错误的编码、不正确的网络设置或配置不当的存储而出现问题时,他们也会受到指责。

在我29岁的时候,我从开发者转到了DBA。对我来说,那些让我很难成为DBA的事情也会让我得到回报。我喜欢吸收和使用广泛的知识,失败的机会越多,不管别人是否看到,避免失败就越有意义。

票数 141
EN

Database Administration用户

发布于 2011-05-24 16:59:57

成为一名DBA实际上需要大量的经验,但它基本上只能来自四种不同的途径:

  1. 作为一名开发人员并对DBA进行修改
  2. 作为一名开发人员并被征召为DBA
  3. 直接从大学/职业学校接受培训,成为DBA。
  4. 作为一名SysAdmin,作为一名DBA,做一个替补席或做双重任务。

是一名开发人员,并将其转换为DBA

在这个网站上提出的另一个问题,DBA如何能更“对程序员友好”,我提到我是一个开发人员,在DBA工作了16年。与他们一起工作后,我意识到他们的经验包括数据库理论、离散数学和编程经验,在这种程度上,他们可以看到数据库应该如何工作,查询应该如何执行。

有了DBA的背景,让我觉得我还在大学学习,从一个兼职教授,但谁真的知道他们的东西。只要DBA愿意分享他们所知道的东西,而不对您施加压力,他们实际上就可以成为您的导师,开发尽可能高效的SQL语句(SQL本身就是一种对上下文敏感的编程语言)。当然,还有其他一些常见的部分,比如执行安装、备份、进行软件升级、监视性能指标、生成报告等等。但是作为一名开发人员,如果您专注于数据库和针对这些数据库运行的SQL,那么随着时间的推移,您将变得非常擅长SQL,这将是第二天性,您可以专注于应用程序开发。

对开发人员的要求可以是征税,但DBA也是如此。自愿过渡到DBA角色的开发人员将重点从开发和编码转移到我前面提到的平凡的事情上。有鉴于此,DBA与程序员密切合作,为DBA为任何项目做出创造性贡献创造了机会,从而使DBA的角色更加有趣。

是一名开发人员并被起草为DBA

对于大多数只看到开发和编码的开发人员来说,这可能就像选择参加真人秀“幸存者”或游戏节目“Wipeout”一样。新的DBA把时间花在与黑匣子(我们大家都知道的数据库)的交互上,这些年来,他们一直在为获取数据而联系。

新的DBA现在可以创建自己的表和索引。这可能就像让日本的Hibachi厨师进意大利餐厅一样。厨师可以做任何事情,但必须意识到,有新的食谱,厨房用具,餐具,肉类,香料,蔬菜,和其他日常的事情来适应(卫生,库存,开始时间,工作时间等)。这不仅是一个过渡时期,也是一个克服一个伟大的学习曲线的时候。尽管多年来日本烹饪很专业,但仍有新的经验需要学习和发展。在这方面,开发人员必须对自己进行再教育,使其像DBA一样思考。

直接从大学/贸易学校培训成为

到目前为止,这是成为DBA最致命的方式。这也是最罕见的道路--事实上,这几乎是闻所未闻的。现在我们说的是让麦当劳或汉堡王的人进入同一家意大利餐厅。

其中涉及三条学习曲线:

  1. 将大学/职业学校的技能应用到DBA的角色中,
  2. 与特定的关系数据库(PostgreSQL、Oracle、MySQL、DB2、Sybase、Ingres)进行交互,
  3. 与开发人员互动(一个未来的DBA学习良好的社交技能直接离开学校?)是的,对!)

在这方面,开发人员多年来将占据DBA的上风。DBA必须学会快速适应早期开发人员作为DBA的需求。也许DBA可以获得不错的起薪,但如果不在这三个学习领域发展自己,就很难成长。

是一名SysAdmin,作为一名DBA

,他担任或拉出双重职责。

作为一名前开发人员和现在的DBA,有一件事不能被认为是理所当然的,那就是SysAdmin的角色。

扮演系统管理员/DBA的角色对我来说有点令人敬畏。在我雇主的托管公司,我们有一个叫SysAdmin/DBA (SCMDBA)的家伙。他被基础设施项目和他自己的内部MySQL演唱会淹没了。我不羡慕他,我赞扬他。老实说,由于SysAdmin/DBA的真实想法对我来说是陌生的,所以我把它留给SysAdmin/DBA来更新这个段落(或者完全替换它)来描述这个路径。

结论

无论你选择哪一条路,DBA的角色都可以被区分或厌恶,这取决于你在一开始接受指导(或折磨)的意愿,以及你愿意与其他时间一起工作的意愿。只有这样,人们才能说他们喜欢做DBA。

顺便说一句,恰好我在39岁的时候就经历了2004年8月开始的前两条DBA路径。两年的经验,我在征兵DBA的角色,使过渡到一个全职DBA非常愉快和舒适。

我对28到29岁的DBA的建议?和RDBMS一样善于与人打交道。如果你在这两个领域都能成长,你就可以在未来的几年里成为一个DBA。

票数 56
EN

Database Administration用户

发布于 2011-05-24 17:21:57

数据库管理是困难的,因为有两个原因

慢反馈--如果一个人在软件架构师的角色上做了一个错误的决定,与程序员相比,获得负面反馈通常需要更长的时间。程序员经常会在编译或运行测试时意识到错误,这意味着学习周期非常快。数据库管理员在设计数据库时犯了一个错误,当他/她发现最终用户将如何实际使用该软件时,他/她可能会得到反馈。这意味着可能需要数年时间才能得到反馈,即数据库设计存在缺陷,需要重新设计。因此,获得经验需要多年的时间,而不是程序员的几分钟(有时)。

昂贵的错误--这也是为什么大公司的首席执行官们一般都是50多岁的原因。

票数 37
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/2905

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档