AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 52718
Accepted
Dinah
Dinah
Asked: 2009-08-12 05:11:39 +0800 CST2009-08-12 05:11:39 +0800 CST 2009-08-12 05:11:39 +0800 CST

什么时候值得获得 DBA?

  • 772

我现在在几家科技公司工作过,从 10 人到 150 人不等,我从未遇到过真正的 DBA。在获得 DBA 之前,公司需要发展到多大?需要满足哪些标准?

(我也在Stack Overflow上发布了这个。它只是在两个地方,因为那里的主持人建议,“这可能是在 SO 和 SF 上都值得询问的罕见情况之一”)

database-administration
  • 11 11 个回答
  • 1194 Views

11 个回答

  • Voted
  1. Darin Strait
    2009-08-12T05:54:20+08:002009-08-12T05:54:20+08:00

    如果您只使用第三方软件,我会说这取决于您将使用的 RDBMS(Oracle、mySQL、DB2、MS SQL 等),数据大小相对于硬件的能力它将存储在第三方软件的质量上。对于易于使用的数据库上的小事情,让(愿意)技术人员做基础知识可能就足够了。OTOH,起草一个想要编写 Web 代码的开发人员并强迫她备份 Oracle 数据库是一个坏主意。

    如果您正在进行内部开发,我会询问数据库的扩展要求是什么(您是在构建下一个 google 或 twitter,还是在保留食谱?)。您希望 DBA 做什么(备份数据库?保护数据库?参与开发?编写代码?架构数据库架构?进行纵向扩展或横向扩展?创建复制方案?与硬件供应商互动?指定硬件?创建“编码标准”?只是放牧猫?)。

    尽早引入 DBA 有助于防止项目在以后遇到麻烦,而且现在避免常见错误通常比以后修复它们更便宜。

    • 5
  2. Best Answer
    mrdenny
    2009-08-12T11:36:07+08:002009-08-12T11:36:07+08:00

    对于很多公司来说,他们根本不需要全职 DBA,即使他们有一个自制的内部数据库。其他人需要几个 DBA。

    正如一个人提到的,当丢失数据库的成本超过 DBA 的薪水时,那就买一个。这是一个非常好的开始。但是,如果数据库没有太大变化,并且它在良好的硬件上,那么一家公司可能会在没有全职 DBA 的情况下度过多年。这里的诀窍是有一个好的本地(或远程)顾问来处理确保备份是自动化的,并且定期进行其他数据库维护。让他们每年检查几次系统以进行健康检查,并聘请他们处理大型项目和服务器升级,您在大多数情况下应该没问题。

    随着公司的发展,您最终会得到一个更初级的人来处理更多的日常事务,但如果需要,请让顾问留在身边,直到值得为高级 DBA 付出代价。

    没有需要 DBA 的大公司。我现在所在的公司是一家只有 20 人的小型公司,但我们的生死存亡依赖于我们的数据库,因此聘请高级 DBA 是有意义的。我的副项目客户是百人公司,内部只有一个订单处理系统,数据库很少更改。我在 2007 年升级了服务器,从那以后就再也没有回来过。我每隔几个月检查一次,我被告知系统运行良好,并且它正在自动支持它,所以我继续我的快乐方式。

    • 5
  3. Joseph Kern
    2009-08-12T05:54:30+08:002009-08-12T05:54:30+08:00

    我会说这取决于。

    既然这是一项业务,请问自己:“丢失此数据库的成本是多少?”

    只要成本大于或等于 DBA 的薪水,就聘请 DBA。

    “成本”将是一个很难得出的数字。但它应该包括恢复时间、生产力损失(每个用户)和销售损失。像亚马逊这样的地方(几年前达到了每秒 60 次销售的峰值)可以确定停机成本。

    • 3
  4. JB King
    2009-08-12T05:46:06+08:002009-08-12T05:46:06+08:00

    一旦你有了一个数据库服务器并开始遇到性能问题,那就是找一个 DBA、IMO 的时候了。在某些情况下,有时开发人员可能有足够的经验来处理初始数据库配置。

    • 2
  5. Nick O'Neil
    2009-08-12T06:11:55+08:002009-08-12T06:11:55+08:00

    根据管理数据库所花费的资源和时间,关注的是什么以及数据库所在的位置。许多公司认为,与提供数据库服务的托管主机提供商合作,然后与可能在一天中大部分时间处于空闲状态并用作“假设”保险的高级 DBA 合作,会更具成本效益和可靠性。

    • 2
  6. Kev
    2009-08-12T12:21:21+08:002009-08-12T12:21:21+08:00

    这实际上取决于您必须管理多少个数据库。我们有一个现场 DBA,他非常好。我们有 PROD/TEST/TRAIN/DEV Oracle 实例,它们需要在功能方面的回归测试周期后经常进行安全补丁、定期补丁和升级。除此之外,他还管理公司中使用 Oracle 或 SQL 数据库的其他任何东西。他的任务是保持更新的克隆以进行测试,并且他还从 Enterprise Manager 中管理 RMAN 数据库备份。

    考虑到我们的数据库是公司的命脉,我认为在某些情况下,您必须拥有熟练的 DBA 员工。

    • 2
  7. NickatUship
    2009-08-12T12:24:49+08:002009-08-12T12:24:49+08:00

    什么时候

    1. DBA 的工作超出了正在做的人的头上,或者
    2. 现在做 DBA 工作的人最好把时间花在其他地方。
    • 2
  8. Sam
    2009-08-12T12:28:09+08:002009-08-12T12:28:09+08:00

    无论您是否需要聘请 DBA,您都需要有人负责生产和开发服务器。

    你需要有特定的人负责生产变更。

    在超过 2 名开发人员的大型项目中,您需要有人负责将更改迁移到开发中(从工作站或用户模式)。

    如果您计划使用 Reporting Services 或 Analysis Services,您可能会考虑专门研究这些技术的 DBA。

    如果你有敏感数据,你最好确保有人在看管它并且有适当的安全措施——否则你可能会违反政府法规,这需要花钱。

    • 2
  9. Matt Simmons
    2009-08-12T11:58:43+08:002009-08-12T11:58:43+08:00

    我建议,一旦数据库开始占用您足够多的时间以至于您无法完成工作,您就可以考虑它。

    尽量找一个多学科背景的DBA,让他们除了坐等DB破门外,还有事可做。

    • 1
  10. MarkR
    2009-08-12T12:07:49+08:002009-08-12T12:07:49+08:00

    我完全不相信需要 DBA。

    作为应用程序开发人员,我认为 DBA 是不必要的 - 任何应用程序端的修改都应该由应用程序开发人员完成 - DBA 既不能也不应该进行此类更改(实际上,这些更改应该需要经过相同的更改控制和QA 与开发团队的任何其他变更一样,因此 DBA 将成为团队中的一员)。

    同样,任何不是应用程序更改的事情都是系统管理员问题,应该由运营团队使用他们的更改控制策略来处理 - 同样不是 DBA 领域。

    当我发现一个人有什么好处时,我会告诉你的。

    在我看来,DBA 不能真正做很多性能工作,因为其中 99% 将来自修改应用程序,而这些操作不应该做。

    • 0

相关问题

  • 为海量数据库和许多表优化 PHPMyAdmin 配置

  • 在 SQL Server 2008 中更改数据库所有者;CLR 问题取决于使用的方法?

  • 使用 TOAD 客户端通信配置保活

  • SQLVDI 错误 - 尝试释放不属于调用者的互斥锁

  • 每个 Oracle DBA 都应该知道的事情

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    Windows 中执行反向 DNS 查找的命令行实用程序是什么?

    • 14 个回答
  • Marko Smith

    如何检查 Windows 机器上的端口是否被阻塞?

    • 4 个回答
  • Marko Smith

    我应该打开哪个端口以允许远程桌面?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    kch 如何更改我的私钥密码? 2009-08-06 21:37:57 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve