前瞻性在Oracle数据库维护中的作用

数据库 Oracle 数据库运维
通常情况下,可以把数据库管理员监视、维护系统的方式分为两种,分别为反应性监视与前瞻性监视。本文向您介绍在Oracle数据库维护中要做到前瞻性方面的一些知识。

数据库管理员必须自始自终都密切关注可能会对他们所管理的各个系统的可用性或者性能有负面影响的潜在数据库问题。通常情况下,可以把数据库管理员监视、维护系统的方式分为两种,分别为反应性监视与前瞻性监视。

如上图所示,反应性监视是指在已经出现一个性能或者管理问题后再对数据库进行监视。例如有员工向数据库管理员反应应用系统的速度比较慢。数据库管员跟其他技术人员共同会诊后发现是由于数据库的原因所造成的。此时数据库管理员就需要使用相关的工具来收集数据库的运行数据,以查明问题发生的原因。虽然这最终也可以顺利把问题解决,但是这毕竟与优秀数据库管理员心中的期望还有一点距离。因此反应性监视有点像放马后炮的感觉。问题已经出现,即使数据库管理员能够在最短时间内查明原因、解决问题,但是毕竟对于用户产生了一些不利的影响。故数据库管理员希望能够在故障发生之前就能够了解导致这个故障发生的原因,并及时采取有效措施预防这种故障的最终发生。这就使数据库管理员所期待的前瞻性监视。

前暂性监视可以让数据库管理员在问题出现之前、期间或者之后查处并响应数据库常见的性能与管理问题。简单的说,在某一个数据库故障发生之前,都会有一些征兆。这就好像一些自然灾害发生时,像蚂蚁、燕子等等都会有一些异常的反应。数据库管理员有必要了解这些征兆。如此的话,我们才能够把这些问题消除来萌芽状态,防止问题的扩大。

Oracle数据库设计者们也一直在往这个方向努力。如在10G以后的数据库版本中,就有了一个自动工作负荷储存库的功能,来帮助数据库管理员收集在数据库运行中的异常数据。通过这些数据的帮助,数据库管理员可以抢在数据库故障发生之前把问题解决了。

一、自动工作负荷存储库的特点。

自动工作负荷存储库主要是通过两个回退进程实现的,分别为内存监视器与内存监视灯。这两个进程是一对双胞胎数据,他们可以给数据库管理员带来很大的帮助。如这两个进程会相互合作,从数据库系统全局区中直接收集性能统计数据。如数据库服务器CPU内存的使用率等等。其中内存监视器在其中担任主要角色。默认情况下,内存监视器每个小时会启动一次,并从数据动态性能视图、数据库目录视图和数据库优化器中收集性能等相关的统计信息,然后会把这些信息存储在数据库的表中。这个表就叫做自动工作负荷存储库表。通常情况下,这个表被Sysman用户所拥有,并被存储在Sysaux表空间中。

二、启用自动工作负荷存储库并进行相关的配置。

如果数据库管理员需要启用这个自动工作负荷存储库功能,则需要手工对此启动。默认情况下数据库是不会启动这项功能的。笔者的意见是,在数据库设计或者测试的时候,不用启动这项功能。毕竟其本身需要耗用服务器一定的资源。但是在生产服务器(即企业已经在使用的Oracle数据库)系统中,最好启用这项功能。以帮助数据库管理员自动收集数据库的运行性能信息,以实现前瞻性监视的目标。

如果想要启用自动工作负荷存储库功能,则需要配置数据库中的Statistics_level这个参数。这个参数主要有三个值,用来决定内存监视器进程收集统计数据的深度与频率等等。如数据库的规模比较小或者应用时间不长的话,可以把这个参数设置为Basic。在这个参数下,数据库虽然已经启用了自动工作负荷存储库,但是会禁用这项功能的大多数争端监视以及顾问活动。也就是说,此时数据库管理员启动数据库实例时,系统只会收集少量的数据库运行时的统计数据。当数据库规模比较大时这些数据往往不能够帮助数据库管理员排查故障发生的原因。如果数据库设计比较复杂或者企业对于数据库的性能要求比较高,则此时数据库管理员可以把这个参数设置为ALL,这是自动工作负荷存储库收集统计数据的最高级别。在这个级别下,内存监视器将会捕获大部分的统计数据,同时还会收集来自操作系统的执行计划和定时信息。如Oracle数据库的自动备份有时候需要操作系统的任务计划的帮助下才能够完成。那么此时数据库管理员就需要考虑数据库性能下降的原因是否跟这个操作系统的任务计划有关。此时内存监视器收集起来的跟操作系统相关的计划与定时信息就会非常的有用。不过有时候数据库管理员可能只需要收集数据库自深的运行信息,而不需要操作系统的相关信息。此时就可以把这个参数设置为Typical。这个参数是自动工作负荷存储库的标准级别,他会收集跟数据库自深相关的统计信息。

【编辑推荐】

  1. Oracle数据库支持笔记
  2. Oracle数据库初始化参数更改的注意事项
  3. 创建Oracle数据库索引的三个标准
  4. Oracle数据库中的字符处理技巧
  5. 详解Oracle数据库中文全文索引(1)
责任编辑:冰荷 来源: ctocio
相关推荐

2009-04-24 09:15:50

Oracle维护前瞻性

2011-04-13 15:54:32

Oracle数据库维护

2010-04-08 10:44:28

Oracle数据库

2010-04-08 10:33:08

Oracle数据库

2019-06-27 18:30:30

数据平台架构

2021-02-25 09:00:00

架构开发运维

2022-10-26 10:57:37

Gartner首席信息官

2015-07-07 11:08:26

网络安全网络安全立法

2016-12-19 17:05:59

Nutanix

2011-05-25 09:20:24

Oracle数据库

2023-06-19 10:19:13

2009-12-03 11:12:04

BMCIT运营BSM

2010-04-21 14:45:39

Oracle数据库

2011-06-14 15:11:59

ORACLE

2022-04-18 16:32:20

区块链Web3去中心化

2010-01-15 19:40:50

BMCIT运维ITSM

2011-08-18 16:42:04

Oracle数据库维护SQL代码示例

2009-06-09 10:11:16

曙光超级计算机GHPC1000

2018-10-26 10:41:19

2010-05-07 17:56:10

Oracle数据库安全
点赞
收藏

51CTO技术栈公众号