ORACLE数据库巡检以及架构分析培训文档_第1页
ORACLE数据库巡检以及架构分析培训文档_第2页
ORACLE数据库巡检以及架构分析培训文档_第3页
ORACLE数据库巡检以及架构分析培训文档_第4页
ORACLE数据库巡检以及架构分析培训文档_第5页
已阅读5页,还剩24页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

数据库健康检查操作手册广州市唯真数据服务有限公司目录\""\\\\""文档控制\\""修改记录\\""分发者\\""审阅记录\\""相关文档\\""查看机器软硬件负载情况\\""\\""采用\\""健康度情况\\""物理结构\\""和\\""版本\\""所有数据文件所占磁盘空间\\""数据库的内存大小\\""\\""表空间个数,数据文件个数\\""控制文件个数\\""日志文件\\""归档模式\\""并发用户\\""补丁和产品安装情况\\""查看数据库的非默认参数\\""查看控制文件目录\\""查看日志文件最大设置\\""查看日志文件目录\\""归档日志文件\\""数据文件\\""数据库表空间使用情况\\""表空间缺省存储情况\\""查看回滚段\\""查看用户拥有的权限\\""查看服务器性能\\""索引维护\文档控制本文档所有权和解释权归广州唯真数据服务有限公司所有,未经书面许可,不得复制或向第三方公开。.修改记录日期作者版本修改记录分发者姓名职位审阅记录姓名职位相关文档查看机器软硬件负载情况::采用显示设备显示硬件信息查看系统版本磁盘空间查看使用情况查看架构物理结构和健康度检查版本>*:10.2.0(),,..所有数据文件所占磁盘空间(*)()''$;数据库的内存大小>2G2G是最小逻辑单元,一次读多个的数据,有参数决定。数据库高速缓存中缓冲区的大小主要由决定.不是>表空间个数,数据文件个数(*);数据文件个数;(*)控制文件个数日志文件日志总大小()$;日志组个数,日志文件个数,,$;*$;归档模式、先按正常方式关闭数据库然后>>[];>[];>;>;、设置数据库开启后自动启动进程改参数文件中再重新启动数据库,即可、注意事项有足够的资源存放归档日志文件定一个热备份计划,定期删除归档日志文件并发用户>;补丁和产品安装情况先配置$:$:$;[]$10.2.010.2.0(),...:10.2.0::10.2.0:10.2.0:10.2.0:10.2.0:10.2.0:10.2.012-10-39:10.2.0():10g10.2.0.():10.2.010.2.0Bali1.1.1810.2.010.2.010.2.010.2.010.2.010.2.0Enterprise10.2.0Enterprise10.2.010.2.010.2.0Enterprise10.2.010.2.010.2.010.2.0Enterprise10.2.010.2.010.2.010.2.010.2.010.2.010.2.0*10.2.01.4.210.2.010.2.010.2.010.2.0()10.2.010.2.01.2.110.2.010.2.010.2.010g10.2.010g10.2.010g10.2.02.2.1310.2.09.0.210.2.03.4.3810.2.04.2.61.1.105.2.310.2.010.2.010.2.010.2.010.2.010.2.010.2.010.2.010.2.010.2.010.2.04.2.3310.2.010.2.010.2.010.2.010.2.010.2.010.2.010.2.010.1.010.2.010.2.010.2.010.2.010.2.010.2.010.2.010.2.010.2.010.2.010.2.010.2.02.1.2210.2.010.2.010.2.010.2.05.8.310.2.010.2.010.2.010.2.010.2.010.2.010.2.02.1.910.2.010.2.010.2.0*10.2.0*10.2.010.2.010.2.01.4.210.1.210.2.010.2.010.2.0...查看数据库的非默认参数$''查看控制文件目录*$查看日志文件最大设置>查看日志文件目录>归档日志文件$*$;数据文件,数据库表空间使用情况,,,,,,,(()*)''"",(()*)""(,((*))),(,(((*)))),(,(((*)))),;表空间缺省存储情况查看回滚段$(,'')>;查看用户拥有的权限*索引维护*>;树深度大于,需要重建索引以提高效率性能报表查看服务器性能*;以上结果表示,每小时产生一个,保留天用户登陆$''在压力测试或者测试前>();测试完成后,再次生成快照>();如果有了两次生成的快照后,生成报表>;回车,然后输入一个报表名字,生成格式的报表文件性能报表查看方法因为10g的大部分统计结果与类似,所以可以参考。看起来太舒服了...囧调整的先后次序().

().

.

.

.

.分析报告详解

输出结果中必须查看的十项内容

负载间档()

实例效率点击率()

首要的个等待事件()

等待事件()

闩锁等待

首要的()

实例活动()

文件()

内存分配()

缓冲区等待()

报表头信息数据库实例相关信息,包括数据库名称、、版本号与主机等信息。

9.2.0

:月

:月

:()

()

:24M:

:48M:

负载间档

该部分提供每秒和每个事物的统计信息,是监控系统吞吐量和负载变化的重要部分。

:

:

:

:

:

:

:

:

:

:

:

:

::

::

:每秒产生的重做日志大小(单位字节),可标志数据变更频率,数据库任务的繁重与否。本例中平均每秒产生了左右的重做,每个事务品均产生了18M的重做。

:平次每秒产生的逻辑读,单位是。

:每秒变化数量,数据库事物带来改变的块数量。

:平均每秒数据库从磁盘读取的数。

:平均每秒数据库写磁盘的数。

和比较:大约有的逻辑读导致了物理,平均每个事务执行了大约万个逻辑读,在这个例子中,有一些大的事务被执行,因此很高的读取数目是可以接受的。

:每秒用户次数。

:每秒大约个解析,其中有为硬解析,系统每秒分析一些,都还不错。对于优化好的系统,运行了好几天后,这一列应该达到,所有的在一段时间后都应该在共享池中。

:每秒产生的排序次数。

:每秒执行次数。

:每秒产生的事务数,反映数据库任务繁重与否。

:说明的逻辑读是用于那些只读的而不是可修改的块,该系统只更新的块。

:事务回滚的百分比。计算公式为:(())*。本例中每个事务导致一个回滚。如果回滚率过高,可能说明数据库经历了太多的无效操作。过多的回滚可能还会带来的竞争。

实例命中率

该部分可以提前找出潜在将要发生的性能问题,很重要。

()

::

::

::

::

::

:在缓冲区中获取的未等待比率,<说明,有可能是有热块(查找$的和$的)。

:在缓冲区获取的未等待比率。

:数据块在数据缓冲区中的命中率,通常应在以上,否则,小于,需要调整重要的参数,小于可能是要加,但是大量的非选择的索引也会造成该值很高(大量的)。如果一个经常访问的列上的索引被删除,可能会造成显著下降。如果增加了索引,但是它影响了正确的选择表连接时的驱动顺序,则可能会导致显著增高。如果命中率变化幅度很大,说明需要改变模式。

:在内存中的排序率。

:主要代表在共享区的命中率,通常在以上,否则需要要考虑加大共享池,绑定变量,修改等参数。

:近似看作在共享区的命中率,小于<,需要考虑到绑定,如果低于,则就可能基本没有被重用。

:一个语句执行和分析了多少次的度量。在一个分析,然后执行语句,且再也不在同一个会话中执行它的系统中,这个比值为。计算公式为:*()。所以如果系统>,就可能出现该比率小于的情况。本例中,对于每个分析来说大约执行了次。该值<通常说明设置或效率存在问题,造成反复解析,可能较严重,或者可是同有关,如果该值为负值或者极低,通常说明数据库性能存在问题。

:要确保>,否则存在严重的性能问题,比如绑定等会影响该参数。

:计算公式为:*()。即:解析实际运行时间(解析实际运行时间解析中等待资源时间)。此处为,非常低,用于解析花费的每个秒花费了大约秒的时间,这说明花了很多时间等待一个资源。如果该比率为,意味着时间等于经过的时间,没有任何等待。

:计算公式为:(*))。太低表示解析消耗时间过多。与相比,如果很高,这个比值将接近,这是很好的,说明计算机执行的大部分工作是执行查询的工作,而不是分析查询的工作。

相关统计数据

:

>:

>:

:正在使用的共享池的百分率。这个数字应该长时间稳定在~。如果这个百分率太低,就浪费内存。如果这个百分率太高,会使共享池外部的组件老化,如果语句被再次执行,这将使得语句被硬解析。在一个大小合适的系统中,共享池的使用率将处于到略低于的范围内。

>:这是在共享池中有多少个执行次数大于一次的语句的度量。在一个趋向于循环运行的系统中,必须认真考虑这个数字。在这个循环系统中,在一天中相对于另一部分时间的部分时间里执行了一组不同的语句。在共享池中,在观察期间将有一组未被执行过的语句,这仅仅是因为要执行它们的语句在观察期间没有运行。只有系统连续运行相同的语句组,这个数字才会接近。这里显示,在这个共享池中几乎有的语句在分钟的观察窗口中运行次数多于一次。剩下的的语句可能已经在那里了系统只是没有理由去执行它。

>:这是与不频繁使用的语句相比,频繁使用的语句消耗内存多少的一个度量。这个数字将在总体上与>非常接近,除非有某些查询任务消耗的内存没有规律。

在稳定状态下,总体上会看见随着时间的推移大约有~的共享池被使用。如果报表的时间窗口足够大到覆盖所有的周期,执行次数大于一次的语句的百分率应该接近于。这是一个受观察之间持续时间影响的统计数字。可以期望它随观察之间的时间长度增大而增大。首要等待事件

常见等待事件说明:

等待事件是衡量运行状况的重要依据与指示,主要有空闲等待事件和非空闲等待事件。

:,等待事件按等待的时间排序,,等待事件按等待的数量排序。

运行期间必须上设置。

空闲等待事件是正等待某种工作,在诊断和优化数据库时候,不用过多注意这部分事件,非空闲等待事件专门针对的活动,指数据库任务或应用程序运行过程中发生的等待,这些等待事件是我们在调整数据库应该关注的。

()

*

这里是比其他任何事件都能使速度减慢的事件。比较影响性能的常见等待事件:

:该事件通常与全表扫描有关。因为全表扫描是被放入内存中进行的进行的,通常情况下它不可能被放入连续的缓冲区中,所以就散布在缓冲区的缓存中。该指数的数量过大说明缺少索引或者限制了索引的使用(也可以调整)。这种情况也可能是正常的,因为执行全表扫描可能比索引扫描效率更高。当系统存在这些等待时,需要通过检查来确定全表扫描是否必需的来调整。如果经常必须进行全表扫描,而且表比较小,把该表存人池。如果是大表经常进行全表扫描,则应该是系统,而不是的。

:该事件说明在单个数据块上大量等待,该值过高通常是由于表间连接顺序很糟糕,或者使用了非选择性索引。通过将这种等待与报表中已知其它问题联系起来(如效率不高的),通过检查确保索引扫描是必须的,并确保多表连接的连接顺序来调整,可以决定该事件出现的频率。

:该事件说明在单个数据块上大量等待,该值过高通常是由于表间连接顺序很糟糕,或者使用了非选择性索引。通过将这种等待与报表中已知其它问题联系起来(如效率不高的),通过检查确保索引扫描是必须的,并确保多表连接的连接顺序来调整,可以决定该事件出现的频率。

:当缓冲区以一种非共享方式或者如正在被读入到缓冲时,就会出现该等待。该值不应该大于,确认是不是由于热点块造成(如果是可以用反转索引,或者用更小块大小)。

:常跟应用没有很好的应用绑定有关。闩锁是底层的队列机制(更加准确的名称应该是互斥机制),用于保护系统全局区()共享内存结构闩锁用于防止对内存结构的并行访问。如果闩锁不可用,就会记录一次闩锁丢失。绝大多数得闩锁问题都与使用绑定变量失败(库缓存闩锁)、生成重作问题(重执行分配闩锁)、缓存的争用问题(缓存链)以与缓存的热数据宽块(缓存链)有关。当闩锁丢失率高于时,需要调整这个问题。

:日志缓冲区写的速度快于写的速度,可以增大日志文件大小,增加日志缓冲区的大小,或者使用更快的磁盘来写数据。

:通常是因为归档速度不够快,需要增大重做日志。

:当一个用户提交或回滚数据时,将会话得重做操作从日志缓冲区填充到日志文件中,用户的进程必须等待这个填充工作完成。在每次提交时都出现,如果这个等待事件影响到数据库性能,则就需要修改应用程序的提交频率,为减少这个等待事件,须一次提交更多记录,或者将重做日志文件访在不同的物理磁盘上。

:等待时间包括日志缓冲的写入和发送操作。

数据库用户程序发生的所有等待事件

:::

>

>

>

>

>,()

()()

...

数据库后台进程发生的等待事件

:::

>,()

()()

...

调整首要的个缓冲区读操作和首要的个磁盘读操作做的查询,将可对系统性能产生到的增益。

:::

>:

>

....

在报表的这一部分,通过对语句进行排序,即通过它执行了多少个逻辑来排序。顶端的注释表明一个单元的缓存获得()包括被这个代码块执行的所有语句的。因此将经常在这个列表的顶端看到过程,因为存储过程执行的单独的语句的数目被总计出来。

:::

>:

...

这部分通过物理读对语句进行排序。这显示引起大部分对这个系统进行读取活动的,即物理。

:::

>:

...

这部分告诉我们在这段时间中执行最多的语句。为了隔离某些频繁执行的查询,以观察是否有某些更改逻辑的方法以避免必须如此频繁的执行这些查询,这可能是很有用的。或许一个查询正在一个循环的内部执行,而且它可能在循环的外部执行一次,可以设计简单的算法更改以减少必须执行这个查询的次数。即使它运行的飞快,任何被执行几百万次的操作都将开始耗尽大量的时间。

实例活动:::

……

脏缓冲的个数

如果数量很大,说明缓冲区过小

……

下面两个报表是面向的。通常,在这里期望在各设备上的读取和写入操作是均匀分布的。要找出什么文件可能非常“热”。一旦了解了如何读取和写入这些数据,他们也许能够通过磁盘间更均匀的分配而得到某些性能提升。

:::

>()

()()

:::

>,

()()

缓冲池:::

>:,:,:

>:,,,,

如果我们使用多缓冲池的功能,上面的报表会告诉我们缓冲池引起的使用故障。实际上这只是我们在报表的开头看到的信息的重复。

回滚段活动:::

>:,:

()()

一般期望活动在各回滚段间(除了回滚段外)均匀分布。在检查报表的这一部分时,报表标题也具有需要记住的最有用信息。尤其是,如果完全使用最佳设置时关于比更大的建议。因为这是与最有关的活动(和回滚段信息)。异常分析.

跟踪数据库的变化:可以离线的跟踪数据库的变化,而不会影响在线系统的性能。.

回退数据库的变化:回退特定的变化数据,减少

的执行。.

优化和扩容计划:可通过分析日志文件中的数据以分析数据增长模式。二、安装要安装工具,必须首先要运行下面这样两个脚本,

$

$.这两个脚本必须均以用户身份运行。其中第一个脚本用来创建包,该包用来分析日志文件。第二个脚本用来创建包,该包用来创建数据字典文件。三、使用工具下面将详细介绍如何使用工具。、创建数据字典文件()前面已经谈到,工具实际上是由两个新的内建包((

和

)和四个$动态性能视图(视图是在利用过程启动时创建)组成。在使用工具分析

文件之前,可以使用

包将数据字典导出为一个文本文件。该字典文件是可选的,但是如果没有它,解释出来的语句中关于数据字典中的部分(如表名、列名等)和数值都将是进制的形式,我们是无法直接理解的。例如,下面的语句:

(,

)

(,

'张三');

解释出来的结果将是下面这个样子,

(,

)

((''),

('4a6f创建数据字典的目的就是让引用涉与到内部数据字典中的部分时为他们实际的名字,而不是系统内部的进制。数据字典文件是一个文本文件,使用包来创建。如果我们要分析的数据库中的表有变化,影响到库的数据字典也发生变化,这时就需要重新创建该字典文件。另外一种情况是在分析另外一个数据库文件的重作日志时,也必须要重新生成一遍被分析数据库的数据字典文件。首先在初始化参数文件中,指定数据字典文件的位置,也就是添加一个参数,该参数值为服务器中放置数据字典文件的目录。如:

(:\\)

重新启动数据库,使新加的参数生效,然后创建数据字典文件:>

>

(

>;

'

',

>;

':\\');

、创建要分析的日志文件列表的重作日志分为两种,在线()和离线()归档日志文件,下面就分别来讨论这两种不同日志文件的列表创建。()分析在线重作日志文件.

创建列表>;

(>;'

:\\\\',>);

.

添加其他日志文件到列表>;

(>;'

:\\\\',>);()分析离线日志文件.创建列表>;

(>;'

:\\\\\',>);

.添加另外的日志文件到列表>;

(>;'

:\\\\\',>);关于这个日志文件列表中需要分析日志文件的个数完全由你自己决定,但这里建议最好是每次只添加一个需要分析的

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论