数据库管理员Word文档下载推荐.docx
- 文档编号:17029965
- 上传时间:2022-11-28
- 格式:DOCX
- 页数:11
- 大小:29.99KB
数据库管理员Word文档下载推荐.docx
《数据库管理员Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《数据库管理员Word文档下载推荐.docx(11页珍藏版)》请在冰豆网上搜索。
晚间维护过程
每周维护过程
月维护过程
附录日常程序
每晚处理程序
每周处理程序
薪资简介
职责一般监视
备份
修改密码
SQL语句
深层次管理和研究
每天的工作
每周的工作
OracleDBA日常管理目的
日常维护程序
每周维护工作
维护过程日维护过程
晚间维护过程
每周维护过程
附录
日常程序每晚处理程序每周处理程序薪资展开编辑本段简介
一个小的软件开发工作室和一个分工高度明细的大公司相比,DBA的职责来得更加宽泛一些。
一个公司,不管它是自己开发应用软件,还是购买第三方的应用软件,只要涉及到数据库(有多少不涉及数据库的应用软件呢?
数据库是商业的灵魂和大脑啊),就需要确定是否雇佣一个或几个DBA。
知道DBA这个职位有哪些要求,对于企业内部这个职位的定义或者对于那些未来的DBA将是至关重要的。
编辑本段任务
安装和升级数据库服务器(如Oracle、MicrosoftSQLserver),以及应用程序工具。
数据库设计系统存储方案,并制定未来的存储需求计划。
一旦开发人员设计了一个应用,就需要DBA来创建数据库存储结构(tablespaces)。
一旦开发人员设计了一个应用,就需要DBA来创建数据库对象(tables,views,indexes)。
根据开发人员的反馈信息,必要的时候,修改数据库的结构。
登记数据库的用户,维护数据库的安全性。
保证数据库的使用符合知识产权相关法规。
控制和监控用户对数据库的存取访问。
监控和优化数据库的性能。
制定数据库备份计划,灾难出现时对数据库信息进行恢复 维护适当介质上的存档或者备份数据 备份和恢复数据库 联系数据库系统的生产厂商,跟踪技术信息。
编辑本段个性特点
很多时候管理人员都忽视了DBA的个性特点,他们只关注DBA的技术能力。
实际上,上面谈到的每个职责都意味着:
DBA需要跟各种人员打交道,这些人员可能是销售商、用户、开发人员或者管理人员。
这说明:
DBA必须具有下面的个性特点:
自信心好奇心坚韧的意志力老练自我驱动注意细节 为什么这些个性特点很重要呢?
我就有几个缺乏自信心的部下,他们反复问我一些事无巨细的问题,他们没有信心哪怕做最小的决定。
他们也缺乏工作的主动性。
这对于初级DBA来说可能问题不太大,但对于那些高级DBA来说,如果他们缺乏自信心,他们又可以依赖谁帮他们决策呢?
在DBA的面试中,即使你不能回答某个技术问题,你也要表现出足够的自信心。
最致命的不是不知道问题的答案,而是不知道从哪儿得到答案。
几乎所有的数据库系统都在不停地更新。
但并不是所有的更新都有技术文档。
对于好的DBA来说,好奇心是必需的。
没有好奇心和求知欲的DBA总是等待有人告诉他们答案。
而一个求知欲强的DBA将安装最新版本的数据库系统,并立即开始搜寻那些哪怕是细微的功能和性能上的差异和增强,从而改进自己的工作。
应试时一个必然问及的问题是:
你手头有哪些参考资料?
你如何使用它们?
毫无疑问,如果你只回答了数据库的文档,或者你甚至没有读过他们,你的“股票市值”将大大下降。
好奇心会驱使DBA们理解数据字典(DataDictionary)、管理工具(Tools)或者其他支持包(Packages)。
DBA常常会碰到棘手的问题。
寻找答案是一个需要坚韧意志力、可以经受摔打的个性特点。
我常常在一些讨论组或者论坛上看到DBA们提出的问题,这些问题往往是提问者自己可以解决的,如果他们具有坚韧的个性特点,并努力寻求问题的答案。
自我驱动对每个人都是很重要的,对DBA尤其如此。
DBA要能想办法使问题出现,而不是等待问题的出现。
自驱力强的DBA常常设法取得或者自己写一些必要的脚本(Script)来监控包括数据表大小(TableSize)、表空间使用(TablespaceUsage)等项目,这些项目如果被忽视,他们将遇到麻烦。
应试的时候DBA们常常被问及在PL/SQL、SQL或者SQL*PLUS方面的经验,这些问题将把你从从来没有编写过自己需要的脚本的那些DBA们区分开。
不用说和用户,就是和程序员和管理人员打交道,也需要你足够老练。
一个一点不会处事的DBA不会为你做什么好事,只会在你的部门点燃敌对情绪的烈火。
老练是这样一种能力,你劝告某个人到地府去,哈哈,最后这个人怀着渴望的心情去了。
很多时候,开发者、管理者、用户,他们会提出毫无道理的需求,DBA们需要老练地引导、修正它们的要求,说服他们。
在应试时,你的应对就很能说明你是否老练。
最后说说注意细节,这种性格倾向非常重要。
注意细节的DBA们衣着整洁,有自己的日程安排,在应试前对应聘的单位做过调查。
注意细节的DBA们深入了解数据库的内核,并能理解视图、表之间的关系。
编辑本段等级
DBA的等级并不是很严格的。
按照对数据库的掌握情况,我简单地分成三个等级:
初级Primary、中级Intermediate和高级Senior。
初级DBA又称为DBBS,是英文DatabaseBabySitter的缩写。
初级DBA常常是兼职的,他们往往同时是程序员或者兼任其他的工作。
初级DBA往往把个人简历写得很棒,参与了很多和数据库有关的项目或工作。
但是,这些项目或者工作往往是:
第三方软件供应商已经安装并配置了数据库,他们只做一些监控的工作。
他们能处理一些简单的问题,但大多数时候他们向应用软件供应商求救。
初级DBA更喜欢图形化的数据库管理或者监控工具,他们喜欢Access这样的桌面数据库简单易用,并把这些小型数据库的经验简单地应用到大型数据库相关的工作中。
初级DBA是最好区分的。
而中级DBA和高级DBA就不太好区分。
他们的差别在于经验的不同和个性特点、能力方面的差异。
中级DBA比较多,他们可以胜任高级DBA的大部分工作,包括:
数据库安装数据库配置和管理权限设置和安全管理监控和性能调节备份和恢复解决一般的问题 中级DBA往往从业一年左右,熟悉某种操作系统环境下的数据库。
因为对中级DBA来讲,WindowsNT和Unix是有很大差别的。
中级DBA对SQL比较熟悉,他们自己购买了几本数据库方面的书籍,并深入钻研。
中级DBA往往同时兼任数据库程序员,他们的工作对性能、稳定性、安全性的追求基本上不是很高,往往配合高级DBA做一些例行工作。
高级DBA在国内是非常少的。
他们购买了太多的数据库方面的英文资料,也许是托朋友从Amazon买的。
相对于他们的报酬来讲,买书的钱是很少的一个比例。
高级DBA一般都熟悉很多种操作平台下的几种大型数据库。
他们知道各种不同数据库在不同环境下的优势和劣势,并能在数据库平台和数据库环境的选择方面做出决策。
他们一般通晓系统架构和数据库设计,并能对数据库进行各种级别的优化。
高级DBA一般都配有助手,他们更偏向做决策和计划。
高级DBA往往在银行业、保险业、在线交易等对稳定性、安全性、性能都要求比较高的关键业务处理领域大显身手。
很多时候,是否取得数据库专家认证证书并不是很重要。
我知道很多数据库厂商的培训只要你去了都会获得证书。
有很多的公司提供商业化的培训,他们的服务质量也有好有劣。
所以证书并不是特别地有意义。
编辑本段数据库系统
最“容易”的数据库系统-MicrosoftSQLServer 如果你打算做一个DBA,建议你选择那些现在比较流行的数据库系统。
这意味着你将有更多的就业机会、交流和培训机会,而且,流行自有流行的理由,你可以因此省心很多。
当然,就业竞争压力也比较大。
一般的入门者选择MicrosoftSQLServer,这是非常适合中小型企业的数据库系统,熟悉Access的读者很容易就能初步使用MicrosoftSQLServer,成为一个DBBS。
MicrosoftSQLServer7.0的报价,5用户版1399美金,增加用户时,127美金每用户。
最“难”的数据库-无冕之王Oracle 如果你有机会接触到Oracle,那可是个好机会。
Oracle是目前最看好的数据库厂商,由于其强大的功能和可配置、可管理能力,OracleDBA的薪资一般比其他数据库管理员的薪资要高。
而且,Oracle在大中型企业的关键应用也更加普遍了。
Oracle可以运行在WindowsNT、SunSolaris、Linux等平台下。
很多情况下要求你不仅仅熟悉NT,还要你熟悉Unix;
而且Oracle不太友善的界面和成箱的Oracle产品资料可能也是一个障碍。
Oracle8i标准版的报价,如果运行在WindowsNT,附带JServer和interMedia,支持5个并发用户,报价是3925美金每CPU。
增加并发用户时,785美金每用户。
增加附加的命名用户时,392.5美金每用户。
数据库系统的贵族-IBMUDB/DB2 作为30年数据库研究的成果,IBMDB2确实称得上“数据库系统的贵族”。
不管是小型商业系统,还是大的银行系统,用DB2都是可以高枕无忧的。
最近推出的新版DB26.1,管理和调节工具更加卓越和便于使用。
DB2可以运行在Intel架构上,也可以运行在IBM的S/390大型计算机上。
如果你所在的行业对IBM的机器特别地称道,建议你学习IBMDB2。
DB2有两种版本:
工作组版和企业版。
工作组版999美元每服务器,外加249美元每个并发用户。
而企业版是12500美元每个CPU,不限并发用户数量。
以Java为中心的数据库-SybaseAdaptiveServerEnterprise(ASE)12.0 即将发布的SybaseASE12.0,直接面向Java程序员。
这种以Java为中心的数据库系统,为那些准备在Java平台下构建企业应用的企业来说,将是最好的选择。
但是ASE称不上一个数据库领域的领先者,尽管相对于它以前的版本已经改进很多,并支持多个CPU和更多的并发,还有很多的新的特性。
但Sybase的风光似乎已经不再。
值得期盼的InformixCentaur 有时候“第一”只是意味着你的对手需要等待更长的时间去赶上你。
这正是1997年创立的Informix所面临的。
Informix公司是率先将多媒体特性加入到关系数据库系统的大型数据库厂商之一。
但是如今,IBM、Oracle、Sybase都已经跨越了这个概念。
所以,Informix不得不寻求新的支撑来使自己区别于其他数据库厂商。
这就是InformixCentaur的目标。
InformixCentaur结合了InformixDynamicServer7.3的对象-关系数据库和InformixUniversalDataOption9.1,意在获得更好的适应性和多媒体支持。
详情如何,我们拭目以待!
编辑本段职责
一般监视
1.监控数据库的警告日志。
Alert.log,定期做备份删除。
2.Linstener.log的监控,/network/admin/linstener.ora。
3.重做日志状态监视,留意视图v$log,v$logfile,该两个视图存储重做日志的信息。
4.监控数据库的日常会话情况。
5.碎片、剩余表空间监控,及时了解表空间的扩展情况、以及剩余空间分布情况,如果有连续的自由空间,手工合并。
6.监控回滚段的使用情况。
生产系统中,要做比较大的维护和数据库结构更改时,用rbs_big01来做。
7.监控扩展段是否存在不满足扩展的表。
8.监控临时表空间。
9.监视对象的修改。
定期列出所有变化的对象。
%BB%B6target="
_new"
class=innerlink>
文件,有初始化参数文件、用户后台文件、系统后台文件
对数据库的备份监控和管理数据库的备份至关重要,对数据库的备份策略要根据实际要求进行更改,数据的日常备份情况进行监控。
由于我们使用了磁带库,所以要对legato备份软件进行监控,同时也要对rman备份数据库进行监控。
密码进行修改
规范数据库用户的管理定期对管理员等重要用户密码进行修改。
对于每一个项目,应该建立一个用户。
DBA应该和相应的项目管理人员或者是程序员沟通,确定怎样建立相应的数据库底层模型,最后由DBA统一管理,建立和维护。
任何数据库对象的更改,应该由DBA根据需求来操作。
对SQL语句的书写规范的要求一个SQL语句,如果写得不理想,对数据库的影响是很大的。
所以,每一个程序员或相应的工作人员在写相应的SQL语句时,应该严格按照《SQL书写规范》一文。
最后要有DBA检查才可以正式运行。
DBA深层次要求一个数据库能否健康有效的运行,仅靠这些日常的维护还是不够的,还应该致力于数据库的更深一层次的管理和研究:
数据库本身的优化,开发上的性能优化;
项目的合理化;
安全化审计方面的工作;
数据库的底层建模研究、规划设计;
各种数据类型的处理;
内部机制的研究;
ora-600错误的研究、故障排除,等等很多值得探讨的问题。
ORACLE数据库管理员应按如下方式对ORACLE数据库系统做定期监控:
(1).每天对ORACLE数据库的运行状态,日志文件,备份情况,数据库的空间使用情况,系统资源的使用情况进行检查,发现并解决问题。
(2).每周对数据库对象的空间扩展情况,数据的增长情况进行监控,对数据库做健康检查,对数据库对象的状态做检查。
(3).每月对表和索引等进行Analyze,检查表空间碎片,寻找数据库性能调整的机会,进行数据库性能调整,提出下一步空间管理计划。
对ORACLE数据库状态进行一次全面检查。
(1).确认所有的INSTANCE状态正常登陆到所有数据库或例程,检测ORACLE后台进程:
$ps–ef|grepora
(2).检查文件系统的使用(剩余空间)。
如果文件系统的剩余空间小于20%,需删除不用的文件以释放空间。
(3).检查日志文件和trace文件记录alert和trace文件中的错误。
连接到每个需管理的系统?
使用’telnet’?
对每个数据库,cd到bdump目录,通常是$ORACLE_BASE//bdump?
使用Unix‘tail’命令来查看alert_.log文件?
如果发现任何新的ORA-错误,记录并解决 (4).检查数据库当日备份的有效性。
对RMAN备份方式:
检查第三方备份工具的备份日志以确定备份是否成功对EXPORT备份方式:
检查exp日志文件以确定备份是否成功对其他备份方式:
检查相应的日志文件 (5).检查数据文件的状态记录状态不是“online”的数据文件,并做恢复。
Selectfile_namefromdba_data_fileswherestatus=’OFFLINE’ (6).检查表空间的使用情况SELECTtablespace_name,max_m,count_blocksfree_blk_cnt,sum_free_m,to_char(100*sum_free_m/sum_m,‘99.99‘)||‘%‘ASpct_freeFROM(SELECTtablespace_name,sum(bytes)/1024/1024ASsum_mFROMdba_data_filesGROUPBYtablespace_name),(SELECTtablespace_nameASfs_ts_name,max(bytes)/1024/1024ASmax_m,count(blocks)AScount_blocks,sum(bytes/1024/1024)ASsum_free_mFROMdba_free_spaceGROUPBYtablespace_name)WHEREtablespace_name=fs_ts_name (7).检查剩余表空间SELECTtablespace_name,sum(blocks)asfree_blk,trunc(sum(bytes)/(1024*1024))asfree_m,max(bytes)/(1024)asbig_chunk_k,count(*)asnum_chunksFROMdba_free_spaceGROUPBYtablespace_name;
(8).监控数据库性能运行bstat/estat生成系统报告或者使用statspack收集统计数据 (9).检查数据库性能,记录数据库的cpu使用、IO、buffer命中率等等使用vmstat,iostat,glance,top等命令 (10).日常出现问题的处理。
(1).控数据库对象的空间扩展情况根据本周每天的检查情况找到空间扩展很快的数据库对象,并采取相应的措施--删除历史数据---扩表空间altertablespaceadddatafile‘’size---调整数据对象的存储参数nextextentpct_increase
(2).监控数据量的增长情况根据本周每天的检查情况找到记录数量增长很快的数据库对象,并采取相应的措施--删除历史数据---扩表空间altertablespaceadddatafile‘’size, (3).系统健康检查检查以下,内容:
init.oracontrolfileredologfilearchivingsortareasizetablespace(system,temporary,tablespacefragment)datafiles(autoextend,location)object(numberofextent,nextextent,index)rollbacksegmentlogging&
tracing(alert.log,max_dump_file_size,sqlnet)(4).检查无效的数据库对象SELECTowner,object_name,object_typeFROMdba_objectsWHEREstatus=’INVALID’。
(5).检查不起作用的约束SELECTowner,constraint_name,table_name,constraint_type,statusFROMdba_constraintsWHEREstatus=‘DISABLED’ANDconstraint_type=‘P‘ (6).检查无效的triggerSELECTowner,trigger_name,table_name,statusFROMdba_triggersWHEREstatus=‘DISABLED’
(1).AnalyzeTables/Indexes/Clusteranalyzetableestimatestatisticssample50percent;
(2).检查表空间碎片根据本月每周的检查分析数据库碎片情况,找到相应的解决方法 (3).寻找数据库性能调整的机会比较每天对数据库性能的监控报告,确定是否有必要对数据库性能进行调整 (4).数据库性能调整如有必要,进行性能调整 (5).提出下一步空间管理计划根据每周的监控,提出空间管理的改进方法
编辑本段OracleDBA日常管理
目的
这篇文档有很详细的资料记录着对一个甚至更多的ORACLE数据库每天的,每月的,每年的运行的状态的结果及检查的结果,在文档的附录中你将会看到所有检查,修改的SQL和PL/SQL代码。
目录
A.检查已起的所有实例B.查找一些新的警告日志C.检查DBSNMP是否在运行D.检查数据库备份是否正确E.检查备份到磁带中的文件是否正确F.检查数据库的性能是否正常合理,是否有足够的空间和资源G.将文档日志复制到备份的数据库中H.要常看DBA用户手册2.晚间维护程序A.收集VOLUMETRIC的数据
A.查找那些破坏规则的OBJECTB.查找是否有违反安全策略的问题C.查看错误地方的SQL*NET日志D.将所有的警告日志存档E.经常访问供应商的主页
A.查看对数据库会产生危害的增长速度B.回顾以前数据库优化性能的调整C.查看I/O的屏颈问题D.回顾FRAGMENTATIONE.将来的执行计划F.查看调整点和维护5.附录A.月维护过程B.晚间维护过程C.周维护过程6.参考文献
编辑本段维护过程
日维护过程
A.查看所有的实例是否已起确定数据库是可用的,把每个实例写入日志并且运行日报告或是运行测试文件。
当然有一些操作我们是希望它能自动运行的。
可选择执行:
用ORACLE管理器中的‘PROBE’事件来查看B.查找新的警告日志文件1.联接每一个操作管理系统2.使用‘TELNET’或是可比较程序3.对每一个管理实例,经常的执行$ORACLE_BASE//bdump操作,并使其能回退到控制数据库的SID。
4.在提示下,使用UNIX中的‘TAIL’命令查看alert_.log,或是用其他方式检查文件中最近时期的警告日志5.如果以前出现过的一些ORA_ERRORS又出现,将它记录到数据库恢复日志中并且仔细的研究它们,这个数据库恢复日志在〈FILE〉中C.查看DBSNMP的运行情况检查每个被管理机器的‘DBSNMP’进程并将它们记录到日志中。
在UNIX中,在命令行中,键入ps–ef|grepdbsnmp,将回看到2个DBSNMP进程在运行。
如果没有,重启DBSNMP。
D.查数据库备份是否成功E.检查备份的磁带文档是否成功F.检查对合理的性能来说是否有足够的资源1.检查在表空间中有没有剩余空间。
对每一个实例来说,检查在表空间中是否存在有剩余空间来满足当天的预期的需要。
当数据库中已有的数据是稳定的,数据日增长的平均数也是可以计算出来,最小的剩余空间至少要能满足每天数据的增长。
A)运行‘FREE.SQL’来检查表空间的剩余空间。
B)运行‘SPACE.SQL’来检查表空间中的剩余空间百分率2.检查回滚段回滚段的状态一般是在线的,除了一些为复杂工作准备的专用段,它一般状态是离线的。
a)每个数据库都有一个回滚段名字的列表。
b)你可以用V$ROLLSTAT来查询在线或是离线的回滚段的现在状态.c)对于所有回滚段的存储参数及名字,可用DBA_ROL
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 管理员
![提示](https://static.bdocx.com/images/bang_tan.gif)