DBA应具备哪些专业技能——数据库管理员的职责

 2015-02-13 11:06:10   评论   3,040次浏览

今天在开发者论坛看到一个关于DBA职责的帖子,感觉很精辟,在这里保存下来,给大家分享一下。

 

    1、   创建、优化、修复数据库和熟悉数据库管理平台

这一点可以说是比较基础的技能,也是需求应用最为广泛的操作点,我们一般情况下,很多网站都是使用mysql数据库来跑网站,搭建网站环境并创建高可靠性的数据库自然是第一步,mysql数据库很明显的一个特点就是需要不定时的修复表碎片,我们的DBA可以通过sql语句来实现,也可以通过一些数据库管理平台来实现,目前比较流行的phpmyadmin就是其一,当然如果选用阿里云RDS就要对[font=微软雅黑, 'Microsoft Yahei', 'Hiragino Sans GB', tahoma, arial, 宋体]iDB Cloud足够熟悉,掌握这些才算是一个DBA的入门。

dba职能
  2、数据升级、搬家和调试

数据库升级是经常遇到的事情,我们传统的方式是通过shell工具下载并安装升级,DBA应当能够根据技术总监要求和网站实际情况是否需要升级并及时操作,阿里云RDS在这方面直接是可以实现一键升级吗,是十分方便的。
不可忽视的还有一点就是数据的搬家和调试,我们在网站运营过程中,由于各种问题,可能会遇到网站搬家或者单独数据库搬家的情况,DBA能应技术总监安排,将数据库完整无误的搬家到新的实例并调试,确保网站运行无误。

   3、备份和回溯

这一点十分必要,数据库的备份甚至网站的备份都是相关管理人员的重要职责,在网站出现故障,数据丢失的情况下,能够通过备份数据将网站恢复到最近一次的稳定状态就能够极大的挽回网站因 本体数据带来的损失。还有一种常见情况是对于数据的误删除或修改,如要精确恢复,这就不是定期备份能够解决的事情了,我们可能需要将数据精确的恢复到某个时间点上,这样的数据回溯要求相对更高,还好,RDS的binlog就能够完美解决这一问题,这一点是值得一提的。

4、保证数据库的安全和高可用性

数据库安全和高可用性是能比较直观的反映出DBA称职程度的,对于技术总监来说,我们当然希望拥有一个安全稳定的数据库氛围,如果经常出现”建立数据库连接时失败“这种情况,无疑要对DBA发火了。诸如一些sql注入攻击、批量请求等DBA尽量能够防止和拦截掉,不能让我们的数据库不堪一击,无法扛住普通的攻击和压力,这一点直接关乎到实例的日常用户体验。

5、对数据库有良好的资源、状态监控措施,做好适当的调整

DBA的技能其中一块还要监控数据库的实时性能以均衡资源、适时调整。我们的数据库都是从软硬件两方面出发的,硬件一些参数对于数据库的响应速度、读写增删改的反应敏捷性都是有影响的。能够实时监控磁盘容量、带宽、cpu、链接数和读写量并根据对应的数据提出调整意见,配合其他研发人员进行软件程序上的调整或者硬件性能上的升级是DBA的职责之一,大多数网站都要求自己的网站需要7*24小时不间断的运行,这样,也对DBA提出了更高的要求——实现24小时不间断的软硬件资源、数据状态监控,并及时反馈建议和适当调整。

蚂蚁森林为我浇水吧!

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: