1. 专业的多面手(Be an expert generalist)
熟知存储、操作系统等领域的知识, 跨平台数据库的技术也是必须要掌握的,不能离开了 Windows 环境到了 Unix 下什么都作不了. 看上去这一点似乎有些苛求,不过个人认为通过持续的学习能力加上良好的知识积累方法会让你无限接近这种能力.
2. 理解来自商业、用户的需求(Understand the business and user expectations).
如何把掌握的数据库知识应用到商业需求上,还不给用户一种“木匠拎着锤子,看什么都是钉子" 的感觉是需要一点艺术的。
3. 通过可量化的度量构建更加正规的服务级别协议(
Build more granular service level agreements (SLAs) via quantitative and easy-to-understand metrics)
用户(或你的老板)对你的数据库管理工作是否满意,总要有一个可以达成一致的地方,这个一致应该来自"服务级别协议". 服务级别协议是很多 DBA 最容易忽略的一个地方。
4. 把环境分割为更小更易于管理的组成部分(Break down the environment into smaller, more manageable pieces)
一揽子计划不是个好主意,分而治之。这样也容易与委托方达成一致。
5. 关注于任务,而不是实现的细节(Be task-focused, not necessarily on how to accomplish it)
这一点应该是说于开发人员的关系的。DBA 不应该去关注太多程序设计的细节,而应该把注意力集中任务实现上--有效的与数据库交互. (这一点说起来似乎有些勉强,或许站在高效 DBA 的角度上就容易理解了,呵)
6. 隔离并委派普通任务(Segregate and delegate the mundane).
如果从一个技术领导者的角度上说,这是必须的。既然是高效DBA ,那么在没必要事必躬亲拘泥于一些琐碎的事情. 否则再高效也不成.
7. 淘汰特定环境下才可以用的那些玩意儿(Weed out the one-trick ponies)
特定的第三方工具、GUI 工具等只会使得整个环境更为复杂。一个高效的 DBA 应该致力于整个环境的简化与标准化。
说的是 DBA ,其实放到其他工种上也是蛮适合的。
从卓越到优秀,还是从普通到平庸,这是个问题。