我一直有一个观点:程序是暂时的,而数据是永恒的。所以我一直都认为数据的重要性在很多企业中都远远高于应用程序,在多年的工作实践中努力做好DBA的工作。而要做好一名DBA,必须要清楚作为一名DBA的职责。DBA最重要的工作是保证数据的安全与完整,另外重要的职责是协调开发部门部署相对最优性能的数据环境。

DBA的职责归纳起来主要有以下方面:

1.数据服务器安装与升级

数据库系统相应版本的安装需要与开发人员沟通确定,在开发人员熟悉的数据库系统版本与有更好性能的版本选择中,结合实际应用,从DBA的角色思考给出选择建议,确定数据库系统版本后实施安装与升级。

2.应用系统数据层面评估、数据库存诸结构设计、创建数据对象

了解清楚应用系统的功用目的,评估相关数据存诸量可能达到的数量级,根据架构师的架构分析给出相应的数据库存诸设计,并提出尽可能减少数据库负担的架构建议,比如负载均衡、增加Cache层等,确定相关架构后创建相关的数据对象,配合开发部门搭建开发环境。

3.根据开发人员反馈信息,作相关配合工作,必要时调整数据库结构

在开发部门进行系统开发的过程中,随时跟进数据库读写方面的情况,检测开发人员的数据库相关操作语句的优劣性,给出改进意见。根据开发人员的反馈信息,作出相应的配合反馈。在系统开发完成之后,进行相关的负载、安全测试,检测性能并按实际给出调整程序建方式或调整数据库结构。

4.数据库用户及数据库安全维护

分配用户及权限给应用系统使用,在系统进入生产应用之后,做好日常的安全维护工作。

5.监控与优化数据库性能,协调开发人员优化应用系统

对生产环境中的应用系统的数据操作情况进行监控,分析并找出性能低下或有安全隐患的数据库操作语句,反馈给开发人员,给出改进意见。结合服务器运行情况,与系统管理员对CPU、内存、硬盘等硬件运行情况进行评估,按实际情况整改,使数据服务器与应用系统结合运行情况达到最优。

6.制定与执行数据库备份/恢复/迁移计划

随着应用系统的运行,数据会不断地增加,除了随时注意硬盘空间配额是否足以应对一定时期的数据增量外,还要制定相应的数据备份/恢复/迁移计划,特别是备份工作是每日都必不可少的,保证相对完整的数据副本是DBA日常最基本的工作内容之一。针对应用系统制定可用性较高的恢复/迁移计划,保证在需要的情况下,不对应用系统作修改或仅作稍微的修改便能做好应用系统层的恢复或迁移工作。

7.随时准备应对灾难性措施

要能应对灾难性的问题,在做上面的第6点基本上,收集各方面的信息以及与服务器系统管理员的日常协调十分必要。很多时候灾难性的冲击不光是来自数据层面的,还有系统以及硬件方面等。所以作为一名DBA需要与服务器系统管理员以及应用系统架构师时常保持良好的沟通协作,除了要有足够的经验做好预防措施,还要随时准备应对降临的灾难性冲击后的迅速恢复。

8.制定及做好每日/每周/每月的工作计划

周工作以及月工作除掉计划安排之外,细分下来便是每日的工作,一般来说每日的工作主要有:

1)确保数据服务器运转正常,数据库状态正常

2)查看数据库日志,查看跟踪文件,看是否有异常

3)检查服务器盘状态,空间是否够用

4)检查备份是否正常

5)监测性能,如有性能下降,排查原因

6)填写DBA日志

除了日常的工作,系统运行达到一定的时期后,需要与相关部门商议是否对新老数据进行分割,根据数据库性能的历史数据,提供相应的分析报告,以及性能优化计划。

9.了解与学习更新相关的技术信息,以应对各种可能出现的问题

技术的发展是日新月异的,一名好的DBA应该随时了解相关有用的技术信息,对已投入使用的数据库软件,关注官方的技术动态以及Bug公告等。根据公司的实际情况,筛选有用的新技术,应用于对系统的性能提升或增添安全性等。

只要做好了以上几点,富于责任心并具备良好的执行力,相信这样的人离一个好的DBA已不远了。

作者:陆炫志

出处:xuanzhi的博客 http://www.cnblogs.com/xuanzhi201111

您的支持是对博主最大的鼓励,感谢您的认真阅读。本文版权归作者所有,欢迎转载,但请保留该声明。

如何做好一名DBA【转】的更多相关文章

  1. 做为一名dba你应该知道这些数据恢复

    1.将备份数据   拉取到本地虚拟机上 进行恢复(千万不要把数据直接恢复到生产中,除非迫不得已!!)   2.在本地虚拟机上恢复之后,导出需要恢复的数据.   3.在本地虚拟机上恢复做恢复测试.   ...

  2. 当年写的如何成为一名MSSQL DBA

    很多开发人员都想成为一名数据库培训,也有很多人一开始就把自己定位成为一名DBA,DBA究竟需要掌握些什么知识和技能呢?以下是我        做DBA工作和面试DBA时,整理的一些DBA方面的三十个问 ...

  3. MySQL DBA的KPI考核指标有哪些

    绩效考核是对一名员工所作工作的数量.质量.难度.强度.效率的量化考量.由于DBA的工作性质与纯粹的研发人员或运维人员有所区别,对DBA的KPI考核指标也有其特殊性.参考以往的经验和一些较大的DBA t ...

  4. [转载]DBA的特质第二部分:性格

    本文转自http://www.searchdatabase.com.cn/showcontent_84382.htm 支持原创.尊重原创,分享知识! 在本系列文章中,笔者将谈一谈数据库管理员(DBA) ...

  5. [转载]DBA的特质第一部分:技术

    本文转自http://www.searchdatabase.com.cn/showcontent_84379.htm 支持原创.尊重原创,分享知识! 在本系列文章中,笔者将谈一谈数据库管理员(DBA) ...

  6. 无法用sysadmin权限的登录名登陆,sa密码忘了,管理员被锁在外面

    作为一名DBA,你的职责就是保证数据的安全,为了达到要求,你移除了BUILTIN\Administrators组,禁用了sa登录名,修改了服务器端口,删除了所有的sysadmin权限的登录名,你可以连 ...

  7. SQL Server DBA三十问【转】

    http://database.51cto.com/art/201110/298926.htm 很多开发人员都想成为一名DBA,也有很多人一开始就把自己定位成为一名DBA,DBA究竟需要掌握些什么知识 ...

  8. 【译】The Accidental DBA:Troubleshooting

    最近重新翻看The Accidental DBA,将Troubleshooting部分稍作整理,方便以后查阅.此篇是Part 3Part 1:The Accidental DBA:SQL Server ...

  9. 专访探探DBA张文升:PG在互联网应用中同样也跑的很欢畅

    张文升认为,PG无论在可靠性和性能方面都不输其它任何关系型数据库   张文升,探探DBA,负责探探的数据库架构.运维和调优的工作.拥有8年开发经验,曾任去哪儿网DBA.   9月24日,张文升将参加在 ...

随机推荐

  1. DevExpress 重编译 替换强命名 修改源码

    本文以DevExpress 11.1.8举例 必须满足几个条件 1. 必须有DXperience相应版本的全部源代码SourceCode.把全部源代码复制到X:\Program Files\DevEx ...

  2. Requests:Python HTTP Module学习笔记(二)(转)

    在上一篇日志中对Requests做了一个整体的介绍,接来下再介绍一些高级的用法,主要资料还是翻译自官网的文档,如有错漏,欢迎指正. 参考资料:http://docs.python-requests.o ...

  3. windows下找不到strings.h

    头文件用的strings.h,换成string.h就好了.但是以前的Linux系统下用strings.h,strerror都能正常编译,怎么样能正常使用strings.h linux系统下的库问题跟w ...

  4. “Guess the number” game

    项目描述:https://class.coursera.org/interactivepython-004/human_grading/view/courses/972072/assessments/ ...

  5. hdu 4324 Triangle LOVE

    题目连接 http://acm.hdu.edu.cn/showproblem.php?pid=4324 Triangle LOVE Description Recently, scientists f ...

  6. linux下安装protobuf教程+示例(详细)

    (.pb.h:9:42: fatal error: google/protobuf/stubs/common.h: No such file or directory 看这个就应该知道是没有找到头文件 ...

  7. ExtJS 提示

    要使ExtJS支持提示,需要在onReady的function中添加如下语句: Ext.QuickTips.init();//支持tips提示 Ext.form.Field.prototype.msg ...

  8. 53.转:深入浅出FPGA-14-ChipScope软件使用

    引言 索性再破例一下,成个系列也行. 内容组织 1.建立工程 2.插入及配置核 2.1运行Synthesize 2.2新建cdc文件 2.3 ILA核的配置 3. Implement and gene ...

  9. skill-如何禁止浏览器的默认行为

    在默认情况下,点击链接,浏览器会向href所指的地址发送请求, 点击表单提交,浏览器会将表单中的数据进行发送 如果要禁止,可以使用如下语句:

  10. 如何把bootstrap用webpack打包

    今天下载了一个anguarl2写后台,一直没有找到是如何使用bootstrap样式的,然后就全文做了搜索,发现有一段代码 import 'bootstrap-loader'; 这段代码很可疑,所以就查 ...