100分!如果想做数据库管理员?
大家如!,我是个菜鸟,最近对数据库管理员这一个职业感到很有神秘,想问一下数据库管理员主是具体从事什么工作啊?除了sql语言以外,还要学些什么啊?要不要学C++,JAVA之类的语言啊??数学和英语要求高不?.......很想了解数据库管理员其它方面的问题!!............ 问题点数:0、回复次数:21Top
1 楼hdhai9451(☆新人类☆)回复于 2005-06-03 08:24:43 得分 0
一般先從sql 語句開始,最好是學習用sql server or oracle ,這兩個數據庫目前用得比較廣泛
Top
2 楼duanduan1122(俺村俺帅!!!)回复于 2005-06-03 08:34:36 得分 0
DBA的必备知识
要使SQL Server为机构发挥作用,单靠一个人是不可能拥有所有技能或时间去做一切要做的事情。对数据库管理员(DBA) 来说,主要的日常工作是安装配置SQL Server并进行日常维护。下面介绍DBA都与谁打交道,讨论做一个好的DBA必须具备哪些知识,并且对DBA的日常任务做一概括介绍。
在深入了解DBA这一角色之前,让我们先简要了解一下与SQL Server有关的其他一些人,其中包括:
Ø SQL开发人员
如果你们机构准备开发自己的SQL应用软件,就要有一个以上的人用Transact-SQL设计编写SQL Server应用程序,并且用一些开发语言编写客户前端程序。尽管有很多SQL编程人员知道怎样编写程序,但很少有人熟悉网络如何工作、服务器如何工作以及怎样管理服务器。DBA经常必须向SQL编程人员提供他们需要的有关网络硬件和SQL Server的限制因素方面的实际信息。
Ø 网络管理员
网络管理员负责安装服务器并且管理网络应用程序。通常,网络管理员知道有关文件和打印服务器方面的一切知识,但碰到管理专门的应用服务器,如SQL Server时,他们可能会不知所措。这时DBA就必须与网络管理员一同工作,确定最好的方法将SQL Server与网络其他部分集成起来,使得网络通信状况达到最优。DBA也经常要依靠网络管理员解决影响到SQL Server的与网络有关的问题。
Ø 帮助台人员
大多数比较大的机构都有专门负责通过电话联系或亲自去帮助最终用户解决问题的技术支持人员,即帮助台人员。这些帮助台人员必须被教会如何使用并支持你的SQL Server应用程序,这样才能为别人提供帮助。作为一名DBA,你有可能不仅要负责培训他们使用客户端软件,而且要培训他们对SQL Server应用程序有一个基本的理解,这样才能正确地及时地解决问题。而帮助台人员中常会有人第一次向你指出要警惕某个潜在的SQL Server的问题。
Ø 最终用户
虽然最终用户是与计算机应用软件打交道时间最长的人,但他们也是在进行培训时最容易被忽视的人。在向SQL Server用户征询怎样将一个SQL Server应用程序做得更好时也常常将他们忽视。DBA虽然很可能不负责培训用户,但可能要为正确地做最终用户的培训工作提供一些保证工作,并负责就目前的SQL Server应用软件向最终用户征求反馈意见。
作为一名DBA,你的工作就是与以上所列人员努力协同工作。如果你在一个小机构工作,你会发现自己常常身兼数职。没有人会说这是个轻松的工作。
Top
3 楼duanduan1122(俺村俺帅!!!)回复于 2005-06-03 08:34:53 得分 0
DBA所需技能
DBA的职责范围很广,要想做一名好的DBA,其所需技能也是多方面的。一个DBA应当拥有的技能包括以下一些:
Ø 对NT Server的全面理解
由于SQL Server与NT Server联系得非常紧密,DBA必须对NT Server怎样运行以及怎样管理有很好的理解。例如,DBA应当知道怎样管理用户和用户组,怎样修改局部权限和共享权限,怎样改变安全方针,怎样更改注册表,怎样管理共享,怎样终止和启动服务程序,怎样使用事件查看程序,怎样建立容错机制,怎样运行性能监控程序和网络监控程序,怎样理解域设计。DBA还应当熟悉基本的NT Server故障修复方法。
Ø 对SQL Server有本质认识
不用说DBA应当深入理解SQL Server。
Ø 熟悉数据备份与恢复
由于大多数SQL Server数据库都是任务必需的信息,因此DBA的最大挑战就是保证数据根据需要随时提供。不管SQL Server数据库如何备份,DBA必须对SQL Server、NT Server以及第三方的备份工具非常熟悉,也应当熟悉怎样使用这些工具快速恢复崩溃的数据库。
Top
4 楼duanduan1122(俺村俺帅!!!)回复于 2005-06-03 08:35:12 得分 0
DBA需要做的工作
对于许多DBA来说管理至关重要的数据令人非常紧张。许多情况下,你所管理并保护的数据是公司的生命之源,一旦丢失,公司就会陷入危机。解决这种压力的最好方法是防范每个可能存在的问题。这样,你每晚都能睡个安稳觉。直到现在我们总是泛泛地描述DBA的职责。现在让我们具体地看一看DBA所做的些日常工作:
Ø 安装和升级SQL Server
当需要安装一台新的SQL Server计算机或者从老版本升级到新版本时,由DBA来做这些工作。安装一台新的SQL Server计算机可能并不是一件平常的事,除非你是在一家非常大的机构任职。所幸的是,大多数新的安装工作都只是例行公事,而给SQL Server升级就是另外一回事了。虽然升级工作不常进行,但每次升级都非常费时费力。遇到的问题也是方方面面的,从选定不会影响业务操作的升级时间,到碰见足以破坏数据库的意想不到的小错误。升级工作需要周密计划并且有条不紊地进行。
Ø 创建并管理数据库
创建并且管理用于存储数据的数据库通常是DBA的工作。
Ø 管理数据库用户和安全
用户安全管理是DBA最大的任务之一。由于人员职责变动或者有人从机构调离或调入,需要创建用户账号并且设置适当的数据库访问权限。DBA的任务之一就是将安全需要与便于人们很容易地访问需要的数据这两项目标平衡起来。
Ø 进行数据维护
SQL Server数据库非常复杂,为防止数据丢失,DBA要负责执行常规的数据库维护任务,从而在小错误发展成主要问题之前查找到并且修改这些错误。
Ø 备份和恢复数据库
DBA所有工作之中,这一项可能是最重要的,也是最乏味的。即使是最能容错的服务器也有崩溃的时候,所有存储的数据都会遭到破坏。日常备份有助于保证数据不会永久丢失。DBA有责任做一份灾难恢复计划来处理可能发生的数据丢失情况。尽管许多人认为服务器崩溃是数据丢失的主要原因,但也有其他因素。比如,用户出错、发生事故、偷窃、恶意破坏、火灾和一些自然因素。DBA必须对任何意外事件都有所准备。
Ø 在SQL Server与其他应用软件之间传送数据
尽管我们的最终目标是将机构的所有数据以一种统一的格式存储在同一个地方,但这通常不太可能。企业的数据经常分散在各个地方并且以多种格式存储。一些数据可能在大型机上,一些在UNIX服务器上,而另一些在SQL Server上。作为一名DBA,你经常需要将数据从不同的应用程序传给SQL Server,或者从SQL Server传到别的地方。多久传送一次取决于机构的需要。一些DBA每天都得在SQL Server与其他应用软件之间传送数据,而另一些DBA只是偶尔传送一次数据。
Ø 管理数据复制
如果机构需要利用SQL Server提供的数据复制功能,那么DBA的职责就包括建立和管理数据复制。根据不同的业务需要,这项工作可能很简单,也可能很复杂。
Ø 有规律地监控和优化调整SQL Server
作为一名DBA,你肯定比别人更有机会听到对数据库响应时间的抱怨。人人都想要快速的响应时间,一旦得不到就会发牢骚。作为DBA,你会为此而惭愧,即使这常常不是你所能控制的。SQL数据库非常复杂并且有许多因素限制速度。虽然有些任务很快,但有些任务却是本来就慢。当你为加快某一任务而做某些改动时,经常会相应地导致另一任务慢下来。一般而言,DBA必须监控SQL Server数据库的性能并且主动采取措施调整数据库使之性能达到最优。这是一项无休止的工作,因为大多数数据库随时都在变化,一旦改变就要重新调优。
Ø 调度事件
DBA的很多日常工作,如数据库备份,可以用SQL Server的任务调度器自动进行。DBA负责识别可以自动执行的同类任务、执行这些任务,然后跟踪它们以保证任务按调度执行。DBA也可以在SQL Server中设置报警功能,一旦重要事件发生就给DBA发电子邮件,从而使在DBA管理下的所有SQL Server都能及时产生状态信息反馈。
Ø 故障修复
故障修复是DBA经常要做的工作。问题从来不会长时间不出现,一旦你解决了一个问题,从未碰到过的新问题又会出现。虽然故障修复的最好工具是对SQL Server有全面深入的了解,但没有什么工具能替代经验。做DBA时间越长,你就越能成为一名故障修复的能手。
Ø 与别人合作维持SQL Server运行
正如以前所说,DBA不是独自工作的。一个SQL Server只是一个大网络的一小部分,而这个大网络又仅仅组成了一个机构的小部分。DBA总是与遍及机构的许多人一起工作,以保证DBA掌管的SQL Server能像所设计的那样满足机构的业务需要。
Top
5 楼zjcxc(邹建)回复于 2005-06-03 08:37:46 得分 0
大型数据库的定义:大型数据库没有一个准确的定义,最初只要达到GB或TB级就叫大型数据库.
后来国际组织提出,在18小时内不能完全从归档日志中恢复出完整数据库的时候,就叫大型数据库
大型数据库的优化一般按下面的顺序进行:
系统设计优化(Design)--应用程序优化(Application)
--内存区优化(Instance)--磁盘优化(Disk)
--I/O优化(I/O)--操作系统优化(Operating System)Top
6 楼Hopewell_Go(好的在后頭﹗希望更好﹗﹗)回复于 2005-06-03 08:37:46 得分 0
我想無論是學什麼都是從最基礎的學起。
可以先學sql語句然後再深入Top
7 楼zjcxc(邹建)回复于 2005-06-03 08:37:59 得分 0
DBA(数据库管理员)的职责包括:
1. 安装和升级数据库及应用程序工具
2. 数据库设计系统存储方案,并制订未来的存储需求计划.
3. 开发人员设计了一个应用,就需要DBA来创建数据库存储结构
4. 开发人员设计了一个应用,就需要DBA来创建数据库对象
5. 根据开发人员反馈的信息,必要的时候,修改数据库的结构
6. 登记数据库的用户,维护数据库的安全性
7. 保证数据库的使用符合知识产权的相关法规
8. 控制和监控用户对数据库的存取访问
9. 监控和优化数据库的性能
10.制订数据库备份计划,出现灾难时对数据库信息进行恢复
11.维护适当介质上的存档或备份数据
12.备份和恢复数据库
13.联系数据库系统的生产厂商,跟踪技术信息Top
8 楼zjcxc(邹建)回复于 2005-06-03 08:38:45 得分 0
DBA的级别:
初级DBA(DBBS,英文:Database Baby Sitter)
有一定的理论基础,
对数据库的理解和体验仅限于某一特定的数据库产品,并在这一领域
担当DBA角色,进行管理、备份、恢复、数据存储、传输等层次
此层次仅可以把数据库做为谋生手段,而技术水平、经验缺乏
中级DBA:
往往从业一年以上,熟悉某种操作系统环境下的数据库,对数据库理论
有全面的研究,对一两种数据库产品有管理经验,能管理大中型数据库
项目的运营,熟悉系统管理、网络管理。
往往没有软件工程的经验,不能独立完成数据库设计。
中级DBA往往同时兼任数据库程序员,他们的工作对性能、稳定性、安全
性的追求往往不是很高,往往配合高级DBA做一些例行工作。
高级DBA:
国内非常少,一般熟悉多种操作平台下的几种大型数据库,知道各种数据
库在不同环境下的优势和劣势,能在数据库平台和数据库环境的选择上做
决策。
一般通晓系统构架和数据库设计,并能对数据库进行各种级别的优化。
一般配有助手,工作职责偏向于做决策和计划
Top
9 楼Hopewell_Go(好的在后頭﹗希望更好﹗﹗)回复于 2005-06-03 08:38:54 得分 0
我想從最基礎的sql語句開始
Top
10 楼Hopewell_Go(好的在后頭﹗希望更好﹗﹗)回复于 2005-06-03 08:39:15 得分 0
無論是學什麼基礎都是最主要的。
Top
11 楼hanmushui(寒木水)回复于 2005-06-03 08:54:27 得分 0
哎,学吧,早着呢!Top
12 楼pbtech(再不堕落)回复于 2005-06-03 09:59:16 得分 0
努力去学!!
当然,方法要对Top
13 楼sbf()回复于 2005-06-03 11:26:52 得分 0
谢谢楼上的几位!使我对数据库管理员有了一个较入的认识!但是还有问题没有回答我啊!
除了sql语言以外,还要学些什么啊?要不要学C++,JAVA之类的语言啊??数学和英语要求高不?.......
数据库开发又是一个什么概念啊?数据库管理员要做开发吗?......实在是不好意思问这样的问题,但也是没有办法啊!........太想明白这些问题了! (就要结贴了)哼哼!!1Top
14 楼sdysfhs(书到用时方恨少)回复于 2005-06-03 13:09:21 得分 0
dba最好精通何种语言呢?Top
15 楼sdysfhs(书到用时方恨少)回复于 2005-06-03 13:09:44 得分 0
dba最好精通何种语言呢?Top
16 楼hglhyy(為人民币服务!)回复于 2005-06-03 15:29:18 得分 0
先把数据库学好!
语言还要看你所在行业或单位具体的要求!
初步可以试试VB。Top
17 楼zjcxc(邹建)回复于 2005-06-03 16:45:02 得分 0
看清楚我写的“DBA(数据库管理员)的职责包括:...”Top
18 楼kzh80000(如鱼得水)回复于 2005-06-03 17:30:52 得分 0
皱老大 你是什么级别的呀?呵呵!Top
19 楼kzh80000(如鱼得水)回复于 2005-06-03 17:32:27 得分 0
语言我懂JAVA、DELPHI、DELPHI熟练,但JAVA没有实际开发经验,是不是适合往数据库设计方面发展?Top
20 楼ejason(忏悔一生)回复于 2005-06-04 17:05:43 得分 0
还是向SA进发吧Top
21 楼ejason(忏悔一生)回复于 2005-06-04 17:06:05 得分 0
sbf ()
从前我也想去做DBA,但发现从程序员还是更容易转向做SA,因为DBA在公司中是属于网络硬件部门的
zjcxc(邹建)
现实中的邹大侠是做DBA的吗,为何对SQL如此时间钻研呢?如果我没猜错,邹大侠起码每天研究SQL N小时以上
Top




