sqlserver2005系统提供了几个固定的服务器角色
8个
分别是系统管理员、服务器管理员、磁盘管理员、进程管理员、安全管理员、安装管理员、数据库创建者、批量数据输入管理员。
SQL Server 2005是全新的数据库平台系统,包含多种的软件元件与服务,来满足企业对于日渐复杂的数据系统的需求。同时也包括了很多新的和改进的功能来帮助企业的 IT 团队更有效率的工作。
包括了几个在企业级数据管理中关键的增强:易管理、可用性、可伸缩性、安全性。
在Microsoft SQL Server 系统中 数据库管理员(Database Administration 简称为DBA)是最重要的角色 DBA的工作目标就是确保Microsoft SQL Server 系统正常高效地运行 DBA的工作也是最繁忙的工作 无论是性能调整 还是灾难恢复 都离不开DBA的支持
一般地 作为一个DBA 至少应该做好以下 项任务
&# ;任务一 安装和配置;&# ;任务二 容量规划;&# ;任务三 应用架构设计;&# ;任务四 管理数据库对象;&# ;任务五 存储空间管理;&# ;任务六 安全管理;&# ;任务七 备份和恢复;&# ;任务八 性能监视和调优;&# ;任务九 调度作业;&# ;任务十 网络管理;&# ;任务十一 高可用性和高可伸缩性管理;&# ;任务十二 故障解决;
下面简单描述这些DBA的任务
任务一 安装和配置
DBA的第一项任务是安装和配置Microsoft SQL Server 软件系统 为顺利使用Microsoft SQL Server 软件创建良好的环境 无论是安装还是配置 都应该根据实际需要来进行 使得系统满足用户的实际需求 需要注意的是 系统配置不是一劳永逸的 应该随时根据需求的变化和环境的需要 进行监视和适当地调整
任务二 容量规划
容量规划是对整个Microsoft SQL Server 系统进行一个总体的规划 规划的重点应该放在解决瓶颈问题上 可以从内容和期限两个方面考虑系统的容量规划
从内容上来看 应该考虑的主要内容包括 硬件容量规划 软件规划 网络规划 硬件容量规划包括磁盘空间 CPU I/O等规划 软件规划包括操作系统的安装和配置规划 数据库规划 数据库对象内容和数量规划等 网络规划包括网络硬件 网络软件和协议 网络客户数量流量和分布 网络拓扑结构等规划
从期限上来看 应该考虑短期 中期和长期规划 短期规划的目的是满足当前日常业务的需要 中期规划主要是满足业务发展和扩大的需要 长期规划主要是满足业务极限需要等 例如 如果预测某个系统的当前并发用户数量是 年后的用户可能达到 万 那么这时既不能按照 用户的需求来设计 也不能一下子按照 万用户的需求来设计 一定要采取一个折中的形式
任务三 应用架构设计
应用架构设计包括数据库设计 应用程序设计和相应的技术架构设计
数据库设计应该考虑数据库的逻辑需求 数据库的创建方式和数量 数据库数据文件和日志文件的物理位置等 一般情况下 可以在Microsoft SQL Server 系统成功安装之后 根据规划的目标 手工创建数据库
应用设计应该考虑开发工具的选择 API技术 内部资源和外部资源的结合 应用架构的分布等 需要强调是在应用设计时 DBA应该与开发人员共同工作 确保他们编写出优化的代码 尽可能地使用服务器的资源
技术架构设计主要包括表示层 逻辑层和数据层的分布 这些分布不应该考虑到硬件资源和用户需求 既不能片面地追求过高的硬件资源 也不能仅仅局限于当前的环境 一定要按照可扩展的观点来综合考虑
任务四 管理数据库对象
管理数据库对象是使用数据库的最基本 最重要的工作 这些对象包括表 索引 视图 存储过程 函数 触发器 同义词等 为了完成管理数据库对象的工作 DBA应该能够很好地回答诸如下面的这些问题
&# ;系统应该包括哪些数据&# ;应该怎样存储这些数据&# ;应该在系统中创建哪些表&# ;应该在这些表中创建哪些索引 以便加速检索&# ;是否应该创建视图为什么要创建这些视图&# ;应该创建哪些存储过程 函数 CLR对象&# ;应该在哪些表上创建触发器应该针对哪些操作创建触发器&# ;是否应该创建同义词
任务五 存储空间管理
存储空间管理任务就是怎样为数据分配空间 怎样保持空间可以满足数据的不断增长 随着业务量的继续和扩大 数据库中的数据也会逐渐地增加 事务日志也不断地增加 存储空间管理任务主要围绕下面几个问题
&# ;当前的数据库由那些数据文件组成&# ;事务日志的大小应该如何设置&# ;数据的增长速度是多大&# ;如何配置数据文件和日志文件的增长方式&# ;数据库中的数据何时可以清除或转移到其他地方
任务六 安全管理
安全性是DBA重要的日常工作之一 安全管理的主要内容包括账户管理和权限管理 账户管理就是在数据库中应该增加哪些账户 这些账户应该组合成哪些角色等等 权限管理是对象权限和语句权限的管理 应该回答下面这些问题
&# ;这些账户或角色应该使用哪些对象&# ;这些账户或角色应该对这些对象执行哪些操作&# ;这些账户或角色应该在数据库中执行哪些操作&# ;如何设置架构如何建立架构和对象 架构和用户的关系
任务七 备份和恢复
无论系统运行如何 系统的灾难性管理是不可缺少的 天灾 人祸 系统缺陷都有可能造成系统的瘫痪 失败 怎样解决这些灾难性问题呢办法就是制订和实行备份和恢复策略 备份就是制作数据的副本 恢复就是将数据的副本复原到系统中 备份和恢复工作是DBA的一项持续性的重要工作 其执行频率根据数据的重要程度和系统的稳定程度来确定
任务八 性能监视和调优
根据企业的经营效益评价企业的管理水平 根据学生的考试成绩评价学生的学习好坏 作为一个大型软件系统 Microsoft SQL Server 系统的运行好坏必须得到正确地监视 评价和相应的调整 这是DBA的一项高级工作 借助一些工具和运行性能指标 DBA应该能够监视系统的运行 如果某些运行指标出现了问题 DBA应该及时地采取补救措施 使得系统始终保持高效运行状态
任务九 调度作业
DBA不可能一天 小时不停地盯住系统的运行 及时地执行某些指定的操作 Microsoft SQL Server 系统提供了许多工具 DBA应该充分利用这些工具和机制 解决下面一些问题
&# ;调度哪些作业应该由系统执行&# ;这些作业应该在何时执行&# ;如何确保这些作业可以正确地执行&# ;如果自动执行的作业执行失败时 应该如何处理&# ;如何使得系统可以均衡地执行相应的操作
任务十 网络管理
作为一种分布式的网络数据库 网络管理的任务更加的重要 Microsoft SQL Server 系统提供了网络管理工具和服务 DBA应该借助这些工具进行服务规划和管理网络操作
任务十一 高可用性和高可伸缩性管理
作为一个DBA 必须保持系统具有高可用性和高可伸缩性 可用性是一项度量计算机系统正常运行时间的指标 可伸缩性描述应用程序可以接受的并发用户访问的数量问题 影响系统可用性的主要因素包括 网络可靠性 硬件故障 应用程序失败 操作系统崩溃 自然灾害等 无论是数据库系统管理员 还是应用程序设计人员 都应该最小化系统破坏的几率 最大化系统的可用性 在设计系统的可用性时 应该确定采取什么样的可用性策略来满足可用性的需求
可用性的需求可以通过 个方面描述 即运行的时间 连接性需求和数据的紧密和松散要求 在确定可用性的需求时 首先考虑系统的运行时间 一般地 数据库应用程序有两种运行时间 即在工作时间是可用的和在任何时间都是可用的 如果只是要求在工作时间是可用的 那么可以把系统的维护等工作安排在周末进行 但是 有许多应用程序要求每天运行 小时 每周运行 天 例如 在线超市等 这时必须采取措施保证系统总是运行的 不同的应用程序有不同的连接性要求 大多数的应用程序和电子商务解决方案要求采用可靠的网络连接 这时 要求永久性的在线连接 必须最小化各种异常现象的发生 有些应用程序允许用户离线使用 这时 系统的可用性要求降低了 大多数应用程序要求数据是同步使用的 用户对数据的请求 系统必须立即做出回应 这是紧密型的数据要求 这种情况必须保证系统的高可用性 有些应用程序不需要数据是同步的 对用户的请求可以延迟回应 这种要求是数据松散型的要求 这时系统的可用性需求比较低
任务十二 故障解决
lishixinzhi/Article/program/SQLServer/201405/30725
8的等级最高,相当于sqlserver的sa账户和oracle的sysadmin,可以做一切操作,包括以下七种角色,事实上一般以下七种角色的权限都是他来指派的,企业中一般严禁这个账户登陆的,因为一旦误操作将会造成灾难性损失。
1管理数据库大小,数据空间大小以及数据日志大小等
2拥有建立数据库的权限
3对已经分配磁盘空间进行分配
4可以管理进程,比如剔除一些非法进程
5可以管理连接权限,用户权限等。
6这个可以启动服务器,对服务器的属性进行分配(连接池、cpu、内存空间等),貌似是sqlserver特有
7这个角色很多数据库是没有的,比如sqlserver就是没有的,oracle8以前好像也是没有的,可以安装数据库以及删除数据库(在非常安全控制地方这种账户是没有连接权限的,也就是说只能安装,但是不能读取里面的数据)
这些权限各不相同,所以很难说是对服务器的还是数据库的,比如7这种,根本说不上是不是服务器级别的,因为它只有安装权限,可以认为是系统级别的,事实上,只有sqlserver存在服务器和数据库的区别,一般的诸如db2和oracle中的所谓服务器指的是那台机器而不是一个sqlserver意义上的服务器,具体情况具体对待
其实主要角色不止这些,还有诸如备份管理员backupadmin,数据清理员英文忘记了等等。
计算机应用技术是计算机科学与技术的一个分支,涉及到计算机系统、网络、软件应用等方面。以下是计算机应用技术的就业方向:
软件开发工程师:负责开发各种软件应用程序,需要掌握多种编程语言和开发工具,能够编写高效、可靠、易于维护的代码。
系统集成工程师:负责将不同的系统、软件、硬件整合成一个完整的系统,需要掌握各种系统和软件的运行原理和互操作性。
网络工程师:负责设计、实施和维护企业的计算机网络,需要掌握网络拓扑、路由器和交换机等网络设备的知识。
数据库管理员:负责管理企业的数据库系统,包括设计、安装、维护和备份等,需要掌握数据库技术、SQL语言等知识。
信息安全工程师:负责保护企业的信息安全,预防黑客攻击和数据泄漏等,需要掌握网络安全知识和技术。
人工智能工程师:负责研究和开发人工智能技术,例如机器学习和自然语言处理等,需要掌握机器学习、深度学习和神经网络等知识。
数据分析师:负责从大量数据中提取有价值的信息,为企业提供决策支持,需要掌握数据分析和数据挖掘技术。
云计算工程师:负责设计、实施和维护企业的云计算系统,需要掌握云计算技术、虚拟化和容器技术等知识。
前端开发工程师:负责开发网站和移动应用的前端界面,需要掌握HTML、CSS和JavaScript等前端技术。
后端开发工程师:负责开发网站和移动应用的后端服务器端,需要掌握各种后端技术和数据库技术。
以上是计算机应用技术的主要就业方向,涵盖了软件开发、网络、安全、数据分析等多个领域。需要根据自己的兴趣和专业背景选择适合自己的方向。
想要系统学习,你可以考察对比一下开设有相关专业的热门学校免费获取资料好的学校拥有根据当下企业需求自主研发课程的能力,能够在校期间取得大专或本科学历,中博软件学院、南京课工场、南京北大青鸟等开设相关专业的学校都是不错的,建议实地考察对比一下。
祝你学有所成,望采纳。
北大青鸟学生课堂实录
1、DBA即数据库管理员,是一个负责管理和维护数据库服务器的人。数据库管理员负责全面管理和控制数据库系统。这个职位对不同的人意味着不同的意义。一个小的软件开发工作室和一个分工高度明细的大公司相比,DBA的职责来得更加宽泛一些。
2、DBA的一般任务
◆安装、配置、升级和迁移
虽然系统管理员通常负责安装、维护服务器上的硬件和操作系统,不过数据库软件的安装通常是由DBA负责的。要胜任这一工作需要了解什么样的硬件配置才能使一个数据库服务器发挥最大的作用,并且还要就这些硬件需求与系统管理员进行沟通。在完成了上述工作之后,DBA就着手安装数据库软件,并从各种不同的产品配置选项中选择一个与硬件匹配的并且能使数据库效率最高的方案。当有新版本的数据库或者补丁包发布时,决定是否要用或者用哪一个升级或补丁包也是DBA的工作之一。如果企业购买了新的数据库服务器,那么DBA也要负责将数据从原有数据库服务器中迁移到新的服务器上来。
◆备份和恢复
DBA负责为他们所管理的数据库制定、实施并定期测试数据库备份和恢复方案。即使在一个大型企业中有一个单独的系统管理员专门负责数据库的备份工作,不过最终的决定权还是由DBA掌握---他来确保备份工作要如期完成,并且在数据库出现故障执行恢复工作后,能包含所需要的所有文件。当数据库故障发生时,DBA需要知道如何使用备份使数据库返尽快回到正常状态,会丢失任何所完成的事务。数据库出现故障的原因可能又很多种,当出现故障时,DBA必须能很快就能判断出故障所在并采取有效的应对策略。从商业的角度来看,数据库备份是有成本的,DBA需要让企业的管理人员知道各种数据库备份方法的成本和风险。
◆数据库安全
因为数据库主要负责集中存储数据,这些数据有可能是非常机密并且非常有价值的,因此数据库往往是黑客甚至好奇的员工最感兴趣的目标。DBA必须了解所用数据库产品的详细安全模型、该数据库产品的用途、以及如何使用它来有效地控制数据存取。DBA最基本的三个安全任务是验证(设置用户帐户控制用户登录数据库)、授权(对数据库的各部分设置权限,防止非法用户访问)、审计(跟踪用户执行了什么数据库操作)。就目前而言,因为监管法规比如Sarbanes-Oxley 和HIPAA的报告要求必须得到满足,这使得数据库审计工作尤为重要。
◆存储和容量规划
创建数据库得一个主要目就是存储和检索数据,所以规划需要多少磁盘存储空间和监测可用的磁盘存储空间是DBA的关键责任。观察数据的增长趋势也是非常重要的,因为只有这样DBA才能向企业的管理层提出一个长远的存储容量规划。
◆性能监控和调整
DBA负责定期监测数据库服务器,从而找出数据库瓶颈(使数据库性能降低的某些部分)并制定补救措施。对数据库服务器的调整工作要在多个层次上完成。数据库服务器硬件的性能以及操作系统的配置都可能成为造成数据库瓶颈的因素,同样数据库软件的配置也是如此。数据库在磁盘驱动器上的物理安装方式以及索引的选择对于数据库的性能也有影响。数据库查询的编码方式也可能显著改变查询结果返回的快慢程度。DBA需要了解在上述各个层次需要用哪些监测工具,以及如何使用它们来调整系统。从应用设计一开始把性能因素考虑在内是积极主动调整的反映,而不是等待问题发生之后再去修复它们。DBA还需要与数据库应用开发人员紧密合作,以确保应用是按照最佳方式开发出来的,并且能带来良好的性能。
◆疑难解答
当数据库服务器出现某些差错的时候,DBA需要知道如何快速确定问题所在并正确地解决问题,保证不丢失数据或使情况变得更糟。
开发的话,没人带,自学3月,自练3月,该会的应该都会了,不是做的很精的开发,一般来说薪水比DBA少。
DBA的话,要求就懂得多了,系统你要懂,基本的SQL,PL/SQL要懂,oracle的架构你要熟悉,服务器硬件你要懂,各种故障你要懂
一般DBA自学不会学到太多,即使是培训也只能培训你某一方面,最好的就是找个公司有机会就上DBA,如果有项目,一般2-3年能做到中级DBA水平,待遇的话,中级DBA一线城市,7-12K还是有的。
一开始把开发学了,找个oracle公司练练开发,有机会再转DBA,才开始的菜鸟DBA基本没人要。
0条评论