Oracle数据库管理员应按如下方式对Oracle数据库系统做定期监控
( ) 每天 对Oracle数据库的运行状态 日志文件 备份情况 数据库的空间使用情况 系统资源的使用情况进行检查 发现并解决问题
( ) 每周 对数据库对象的空间扩展情况 数据的增长情况进行监控 对数据库做健康检查 对数据库对象的状态做检查
( ) 每月 对表和索引等进行Analyze 检查表空间碎片 寻找数据库性能调整的机会 进行数据库性能调整 提出下一步空间管理计划 对ORACLE数据库状态进行一次全面检查
每天的工作
( ) 确认所有的INSTANCE状态正常登陆到所有数据库或例程 检测ORACLE后台进程: $ps –ef|grep ora
( ) 检查数据文件的状态记录状态不是 online 的数据文件 并做恢复
Select file_name status from dba_data_files where status= UNAVAILABLE ;
( ) 检查日志文件和trace文件记录alert和trace文件中的错误
连接到每个需管理的系统
使用 telnet 对每个数据库 cd到bdump目录 通常是$ORACLE_BASE//bdump 使用Unix tail 命令来查看alert_ log文件 如果发现任何新的ORA 错误 记录并解决( ) 检查数据库当日备份的有效性
对RMAN备份方式: 检查第三方备份工具的备份日志以确定备份是否成功
对EXPORT备份方式: 检查exp日志文件以确定备份是否成功
对其他备份方式: 检查相应的日志文件
( ) 检查文件系统的使用(剩余空间) 如果文件系统的剩余空间小于 % 需删除不用的文件以释放空间
$df –k
( ) 检查表空间的使用情况
SELECT tablespace_name max_m count_blocks free_blk_cnt sum_free_m to_char( sum_free_m/sum_m ) || % AS pct_free FROM (SELECT tablespace_name sum(bytes)/ / AS sum_m FROM dba_data_files GROUP BY tablespace_name) (SELECT tablespace_name AS fs_ts_name max(bytes)/ / AS max_m count(blocks) AS count_blocks sum(bytes/ / ) AS sum_free_m FROM dba_free_space GROUP BY tablespace_name ) WHERE tablespace_name = fs_ts_name;
( ) 检查剩余表空间
SELECT tablespace_name sum ( blocks ) as free_blk trunc ( sum ( bytes ) /( ) ) as free_m max ( bytes ) / ( ) as big_chunk_k count () as num_chunks FROM dba_free_space GROUP BY tablespace_name;
( ) 监控数据库性能
运行bstat/estat生成系统报告或者使用statspack收集统计数据
( ) 检查数据库性能 记录数据库的cpu使用 IO buffer命中率等等
使用vmstat iostat glance top等命令
( ) 日常出现问题的处理
每周的工作
( ) 监控数据库对象的空间扩展情况
根据本周每天的检查情况找到空间扩展很快的数据库对象 并采取相应的措施
删除历史数据
扩表空间alter tablespace add datafile size
调整数据对象的存储参数next extent pct_increase
( ) 监控数据量的增长情况
根据本周每天的检查情况找到记录数量增长很快的数据库对象 并采取相应的措施
删除历史数据
扩表空间alter tablespace add datafile size
( ) 系统健康检查
检查以下内容:
init ora controlfile redo log file archiving sort area size tablespace(system temporary tablespace fragment) datafiles(autoextend location) object(number of extent next extent index) rollback segment logging &tracing(alert log max_dump_file_size sqlnet)
( ) 检查无效的数据库对象
col owner for a col object_name for a SELECT owner object_name object_type FROM dba_objects WHERE status= INVALID ;
( ) 检查不起作用的约束
SELECT owner constraint_name table_name constraint_type status FROM dba_constraints WHERE status = DISABLED AND constraint_type = P ;
( ) 检查无效的trigger
SELECT owner trigger_name table_name status FROM dba_triggers WHERE status = DISABLED ;
每月的工作
( ) Analyze Tables/Indexes/Cluster
yze table estimate statistics sample percent;
( ) 检查表空间碎片
根据本月每周的检查分析数据库碎片情况 找到相应的解决方法;
( ) 寻找数据库性能调整的机会
比较每天对数据库性能的监控报告 确定是否有必要对数据库性能进行调整;
( ) 数据库性能调整
如有必要 进行性能调整;
( ) 提出下一步空间管理计划
lishixinzhi/Article/program/Oracle/201311/18051
1安装和升级数据库服务器(如Oracle、Microsoft SQL server),以及应用程序工具。 2数据库设计系统存储方案,并制定未来的存储需求计划。 3一旦开发人员设计了一个应用,就需要DBA来创建数据库存储结构(tablespaces)。 4一旦开发人员设计了一个应用,就需要DBA来创建数据库对象(tables,views,indexes)。 5根据开发人员的反馈信息,必要的时候,修改数据库的结构。 6登记数据库的用户,维护数据库的安全性。 7保证数据库的使用符合知识产权相关法规。 8控制和监控用户对数据库的存取访问。 9监控和优化数据库的性能。 10制定数据库备份计划,灾难出现时对数据库信息进行恢复 11维护适当介质上的存档或者备份数据 12备份和恢复数据库 13联系数据库系统的生产厂商,跟踪技术信息。
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需要知道如何快速确定问题所在并正确地解决问题,保证不丢失数据或使情况变得更糟。
DBA在不同的公司不同的发展阶段有着不同的职责与定位。一般意义上的DBA只是负责数据库的运营和维护,包括数据库的安装、监控、备份、恢复等基本工作,但是广义上的DBA职责比这个大得多,需要覆盖产品从需求设计、测试到交付上线的整个生命周期,在此过程中不仅要负责数据库管理系统的搭建和运维,更要参与到前期的数据库设计,中期的数据库测试和后期的数据库容量管理和性能优化。
对于初创公司,DBA的工作可能由运维工程师来兼任,从申请域名开始,到服务器上架,配置网络设备,部署 *** 作系统,安装数据库,设计和部署监控,防止漏洞和攻击等等。而大型公司对DBA工作的要求越来越高,以下从各个维度来看DBA工作的职责。
产品生命周期维度
DBA负责了业务数据库从设计、测试到部署交付的全生命周期管理 ,各个阶段的职责包括:
1 产品发布前
这个阶段DBA的职责是数据库准入,主要包括:
1)产品的业务熟悉;
2)产品数据库设计评审:包括架构的合理性评估,存储容量和性能是否满足需求,是否需要缓存,是否需要冗余备份等,同时需要提供数据库schema设计的合理性建议以使产品能够满足上线发布并稳定运行的基本要求;
3)资源评估,包括所需的服务器资源、网络资源以及资源的分布等,同时把关产品对资源预算申请的合理性,控制服务成本;
4)资源就位,将申请的服务器及基础环境/域名准备就位。
2 产品发布
这个阶段DBA负责数据库发布的具体工作,将具体的数据库安装部署和初始化完成后并对外提供服务。对于已在线数据库的升级也属于发布范畴,这个时候的产品发布一般要保障在线发布,在不中断对外服务的情况下完成数据库的升级。对于大型复杂的变更也存在中止服务发布完成后再重新提供服务的情况,但这种情况需要DBA通过尽可能的技术手段来避免。
3 产品运行维护
这个阶段的工作重点包括:
1)监控:对数据库服务运行的状态进行实时的监控,包括数据库会话、数据库日志、数据文件碎片、表空间监控、用户访问监控等,随时发现数据库服务的运行异常和资源消耗情况;输出重要的日常数据库服务运行报表以评估数据库服务整体运行状况,发现数据库隐患;
2)备份:制定和实施数据库备份计划,灾难出现时对数据库信息进行恢复,维护适当介质上的存档或者备份数据。对数据库的备份策略要根据实际要求进行更改,数据的日常备份情况进行监控。
3)安全审计:为不同的数据库管理系统用户规定不同的访问权限,以保护数据库不被未经授权的访问和破坏。例如,允许一类用户只能检索数据,而另一类用户可能拥有更新数据和删除记录的权限。
4)故障处理:对数据库服务出现的任何异常进行及时处理,尽可能避免问题的扩大化甚至中止服务。这之前DBA需要针对各类服务异常,如机房/网络故障、程序bug等问题制定处理的预案,问题出现时可以自动或手动执行预案达到止损的目的。
5)容量管理:包括数据库规模扩张后的资源评估、扩容、机房迁移、流量调度等规划和具体实施。
4 数据库性能优化
产品对外提供服务最重要的一点是用户体验,用户体验中非常重要的是产品的可用性和响应速度。而如何用最合理的资源支持产品提供高可用和高速度的用户体验,这也是DBA的重要职责。
2数据库设计系统存储方案,并制定未来的存储需求计划。 3一旦开发人员设计了一个应用,就需要DBA来创建数据库存储结构(tablespaces)。 4一旦开发人员设计了一个应用,就需要DBA来创建数据库对象(tables,views,indexes)。 5根据开发人员的反馈信息,必要的时候,修改数据库的结构。 6登记数据库的用户,维护数据库的安全性。 7保证数据库的使用符合知识产权相关法规。 8控制和监控用户对数据库的存取访问。 9监控和优化数据库的性能。 10制定数据库备份计划,灾难出现时对数据库信息进行恢复 11维护适当介质上的存档或者备份数据 12备份和恢复数据库 13联系数据库系统的生产厂商,跟踪技术信息。
DBA ,也叫作数据库管理员。主要的工作是负责全面的掌控数据库系统,其主要职责有 ; 设计与定义数据库系统;帮助最终用户使用数据库系统;监督与控制数据库系统的使用和运行;转储与恢复数据库;改进和重组数据库系统,调优数据库系统的性能;重构数据库。
数据库管理员的职责: 一、 一般监视 1. 监控数据库的警告日志。Alert<sid>log,定期做备份删除。 2. Linstenerlog的监控,/network/admin/linstenerora。 3. 重做日志状态监视,留意视图v$log,v$logfile,该两个视图存储重做日志的信息。 4. 监控数据库的日常会话情况。 5. 碎片、剩余表空间监控,及时了解表空间的扩展情况、以及剩余空间分布情况,如果有连续的自由空间,手工合并。 6. 监控回滚段的使用情况。生产系统中,要做比较大的维护和数据库结构更改时,用rbs_big01来做。 7. 监控扩展段是否存在不满足扩展的表。 8. 监控临时表空间。 9. 监视对象的修改。定期列出所有变化的对象。 10. 跟踪文件,有初始化参数文件、用户后台文件、系统后台文件 二、 对数据库的备份监控和管理 数据库的备份至关重要,对数据库的备份策略要根据实际要求进行更改,数据的日常备份情况进行监控。由于我们使用了磁带库,所以要对legato备份软件进行监控,同时也要对rman备份数据库进行监控。 三、 规范数据库用户的管理 定期对管理员等重要用户密码进行修改。对于每一个项目,应该建立一个用户。DBA应该和相应的项目管理人员或者是程序员沟通,确定怎样建立相应的数据库底层模型,最后由DBA统一管理,建立和维护。任何数据库对象的更改,应该由DBA根据需求来 *** 作。 四、 对SQL语句的书写规范的要求 一个SQL语句,如果写得不理想,对数据库的影响是很大的。所以,每一个程序员或相应的工作人员在写相应的SQL语句时,应该严格按照《SQL书写规范》一文。最后要有DBA检查才可以正式运行。 五、 DBA深层次要求 一个数据库能否健康有效的运行,仅靠这些日常的维护还是不够的,还应该致力于数据库的更深一层次的管理和研究:数据库本身的优化,开发上的性能优化;项目的合理化;安全化审计方面的工作;数据库的底层建模研究、规划设计;各种数据类型的处理;内部机制的研究;ora-600错误的研究、故障排除,等等很多值得探讨的问题。
以上就是关于Oracle数据库管理员职责(一)全部的内容,包括:Oracle数据库管理员职责(一)、数据库管理员工作方式是什么、数据库管理员等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)