OracleDBA手册V20.docx

上传人:李司机 文档编号:7369908 上传时间:2024-11-24 格式:DOCX 页数:28 大小:79.23KB
返回 下载 相关 举报
OracleDBA手册V20.docx_第1页
第1页 / 共28页
OracleDBA手册V20.docx_第2页
第2页 / 共28页
OracleDBA手册V20.docx_第3页
第3页 / 共28页
OracleDBA手册V20.docx_第4页
第4页 / 共28页
OracleDBA手册V20.docx_第5页
第5页 / 共28页
点击查看更多>>
资源描述

《OracleDBA手册V20.docx》由会员分享,可在线阅读,更多相关《OracleDBA手册V20.docx(28页珍藏版)》请在三一办公上搜索。

1、Orac1.eDBA手册文档信息:文档名葬Orac1.eDBA手物VO.1文若号文档存款文楼密效内部发行者技术总部发行日常2007-6-19文档变更记录:修订日期版本号修订人批准人2007-6-19创立VO.1林强、王凌洁2007-6-29评审Y1.O场箍湖*林凝、汤成上海SgCARD金仕达计算机有年公司版权所有若非上海S1.JNGARD金仕达计算机有限公司授权,不得引弼本文档或本文档中的任何局部前者设计时优化规划啜蜜I/O监控表空间的I/O比例.监控文件系统的I/O比例得数Igit估计都寻时调优错慢:未定义书签.333030调整DBi1.R与进程酱整Dn1.1.1.ocks调整OPen.cu

2、rsors调整Data_1.inks调整系统进程数Processes调整会话Sessions调整事务transactions调整Job数量调整读取数据最大块数设j1.ock-sga:设置tied_statistics调整或大回国段我jEdbcacheadvice:调整优化模式Optimizerjnode调整优化槿式OptjmiZejindeX.caching.调整优化模式OPtimiZeJindeX_CoS1.adj.调整优化模式opti11izerjnaxPermutations并行优化para1.1.e1._adaptive_u1.ti_user:Para1.Ie1._automatic_

3、tuning:叁致Para1.1.eIJnaX_SerVerS_paraeeterpara1Ie1._threads_pcr_cpu:para1.1.e1._maxservers:改表或视图并存度内存调整SGA调优调整数据蝮冲区buffer_PoO1.kecj)缓冲区bufferPOO1.reCye1.e坂冲区调整共享缓冲区坂存调整日志畿冲区20调整排序区21调整大池缓冲区21调整JAYA池缓冲区22调整表空间25衣着回送段25查看题据库中回退段信息25在陵冲区驻团对象(BUFFER.POO1.KEEP27碎片调优28自由范用的碎片计算29段的碎片整理29杳找使用CPU多的用户30查看用户的内

4、存使用情况30联系信息错出!未定义书签.前言调整数据库的性能必须有一个明确的目标,总的来说可以是以下的几个目标之一或多个:在调整ORAC1.E性能之前,首先要有一个柢能良好的应用设计及药效的SQ1.语句,在比基础上调整ORAC1.E性能的过程有三步:调整内存分配调整I/O谢整资源争用因此,根据上述的原则并根抠自己的工作经脸,认为对我据库的优化大体上可分为如下几个阶段进行:安装数据库时.就数据库的数据块大小进行成认。此参数在数据隼安装之后就不能通过修改J始化参数进行修改或重新创立控制文件进行修改,要改变该值.唯一的方法是堇新安装数据库。在数据库安装完毕之后,对数据库初始化叁数进行修改.一个经过调

5、优过的挈数,对一个系统而言,可作到事半功倍的成效。调整主机的硬件性能和操作系统的软件性能,疾之配合数据库.发悻最大的梃能.进行应用系统的物理设计。进行应用程序的辐写时,对SQ1.语句的优化.在试运行时对系统的物理设计以及应用程序的调整,在系统运行过程中,通过对系统的芨控,认识到东统的瓶颈,对系统再进行一次性能调整.此步骤在今后的系统运行中可能要反复屡次.一、设计时优化规划磁盘I/O1/0瓶颈是最大仕能问题.跨所有可用的磁盘均匀地平街I/O,可以戒少磁话存取的时间.有一个适当的甥理布局.表空间(和它们的数据文件应尽可能地分散在不同的磅隹上。把表空间分散在不同的盆上能够消除或者至少能笏减少磁盘争用

6、.求盘争用在多用户或程序试图同时访问同一张皴这时发生.例如,你有两个必须始常连拈在一起的表,例如DIP,RTMENTS和IMIoYEES表,它们的表空何通常要被分散在两张不同的磁盆上,因为要存取相同噌#上的表或者索引,所以会导致并同一费源的争用。理悲情宛就是这囚个段放在四张不同磁世上的四个表空阿里。另一种方法是和聚熊那样,把这些段放在相同的磁盘上。你可以研究OraCIe版的聚泰技术。对数据量估计对系统中大蚊据量表要进行分类,如流水怅的表,每天都是招量几十万条数据。1,这类表要用分区功能处理,爬商数据查询速度,对数据库的数据分散管理,对于表的所有愫作均适应于分区表的每个分区.2,采用定期转存方式

7、,数括到备份库方式,使前台的表保存一定的数据曼,优化数据表结构.对只读类数据的设计规化六只读类数据存片优化,如历史笈表数据等.表空间或表的参数PCIUSCd统上=46”此卷数悬每个数据无卷能移存储数据空间的大小,表空间叁数Petfree缺省=1伙.比参数是用来UPDAT操作时用的。如果杷表空间步数PCtUSed设置小0%.把PCtfree设置=5%,大大提高数惺块存储数据能力,如原来读取】OooO条读录要读100O个IO块,现在只要读100个IO块。做了dbaobject表做了一个测试,压缩比例压缩分原来的1/3,当然区培比根据不同的表会有不同,字段值重复越少压能比越高,对我们应该还是比较适合

8、.)注意:比参数调整适用于只读数据二、部署时调优系统参数调整调整1.GWR等次1/0号的大小依敕于1.oG蟆冲区的大小,该大小由1.OGBWTER所设置,裳冲区大大会爽迟芍操作,A小可能导致菊繁的小的I/O操作,如果I/O操作的平均大小很大,那么1.OG文件就会成为瓶强,可以使用STR1.PEREDO1.OG文件防止这个问题。调整INn.0RA中的参数1.(X1.BuFFER以调节1.oG缓冲区大小,把REDO1.OG文件分为几个文件,放在不同的槌野上。调整DBwR写进程参数名:db_uritcr_proccsscs:说明:一个例程的数据库写迸程的初始数量。如果使用了DBIR_I(1.S1.A

9、VES,则只能使用一个数据库写进程.可以包立多个数据庠写进程.值苑围:1-10默认值:1查询参数的SQ1.:se1.ectfromv$paraeterwherename1.ikedbwriterprocesses%,OraeIC提供以下方法以防止DBUR(敢据球写进程)活动成为标茨:使用异步I/O异步I/O允许进程继域处理下一不操作,而不必等待在发出写后,最小化了空闲时间,因而改善了系统性能。SoIariS支拈原的设备和文件系统数据文件的异步1/0。使用I/O附属1/0附属(s1.ave)是专用的进程,其惟一功能是执行1/0。它们代Orac1.e7的多个DBUR特性(实际上它们是多个DRWR的

10、梭括,可以由其它进程分布。不管异步I/O是否可用,它们都可以操作.若设置的话,它们械从1.ARGEPoo1.SIZE分配,否则从其亭内存缓冲区分配.初始化参数控制了I/O附属的行为,其中DIS1.ASYNC1.1.1.O和TAPE_ASYNG1.Io允许分别为槌盍和槌带设备关闭异步1/0(因为每个进程类型的I/O附属缺省为0.除非明确设置.否则没有I/O附属被发布)。若DISK_ASYNCH_IO或TAPE-ASYNCH_IO无效,则DHWROs1.AVES应该设置大于0,否则DBWR将成为一个根颈.在这种情况下,SOIariS上DBiIR_1(1.S1.AYES的最正确值为4,而在1.GWR

11、_IOS1.AVES的情次,下.发布的附属不应该超过9个.DB,WRITERPRoCESSES代替On1.C1.e7的参数DBWRrrERS,指定某实例的数祭库写进程的初始敷量.若使用DBttRIO-S1.jwES,则只有一个数据库写进程被使用,而不管DB_WRITEI1.PRoCEsSES的设置.如果工作在一个可以支持多进程的操作系统上,应该马上改变这个参数的值.以获得更好的性能.许多DBA有个错误的柢念,认为此参数受CPU蛾量的限制,实际并非如此。建议为每个数据文件设置两个他据库写入进程.调整1.GWRI/O每次I/O写的大小依财于1.oG馈冲区的大小,该大小由1.oGBtJFFER所设置

12、,馈冲区大大会延迟写操作,大小可能导致频繁的小的I/O操作.如果0掇作的平均大小很大,那么1.oG文件就会成为瓶呆,可以发用STRIPEREDo1.OG文件防止这个问题。调整IN11.ORA中的叁数1.0G_BUFFER以调节1.OG缓冲区大小,把REDO1.OG文件分为几个文件,放在不同的A.调整Dm1._1.ocks用户一次可对哀设定锁的最大数目,如果有三个用户修致6个表,刚需I8个DM1.粮来实现并行操作,如果设定DMj1.oeKS不够大.操作时执行桥中断.你可以通过你的应用程序的愫作视模和最大的并行使用的用户数来估算系统所需要的DM1.JOCKS的值.如果在系统运行中经常发生表锁死的现

13、象,就应该考虑加大该值.设置DM1.OCKS=(并行用户的最大数X(表的数量)。例如,保设你有U个用户和T个表,那么应设置DH1.,OCKS=(1.T),迁可以加上一些余量,例如10.受询卷数的SQ1.:se1.ect丰fromHparaBCICrwherename1.ikerdm1.1.ocks%,调整Open_cursors这个参蚊的值决定了一个用户同时可以翻开的游标数目。可以将游标想象成OraCIe分配治用户的用于受理SQ1.语句的内存空间。这个参数的初始值大小,当用户无法朝开游标胪,应用程序将停止运行。提示诚扬我的值应设将尽可能的大,否则应用程序将由于无法卷开游标而停止运行.建议是设值

14、为:2500-3000查询卷数的SQ1.:se1.ectfromw$ParaBC1.Crwherename1.ikeOPCn-Cursors+调整Datainks参蚊名:。Pen_1.inks:说明:指定在一次会话中同时翻开的与远程数据库的连接的最大数量,该值应等于或超过一个引用多个数据库的单个SQ1.语句中引用的数据库的数量,这样才能翻开所有效据库以便执行该语句.值花田:O-255(如果为0.不允许分布式事务处理)。默认值:4熊议是用按实际dataink数来设置登询参数的SQ1.:se1.ect*fromvS)araeterwherename1.ikeopeninks%调整系统进程数Proc

15、esses这个卷数的值决定了能同片访问OraCIC数据库的进程数。这个参数的初始值为160.但是这个值大小了.S为OraeIe系统本身所使用的系统迸程以及由某个进程所产生的新进程都将占用可使用的进程敷。除季想果制使OraCIC数抠率的用户数,或者由于机JS的性能缺乏,否则应将该参数的位尽可能的大。窿议修改后值不能小于:10OM并发用户数2)攵询参数的SQ1.:se1.ectfromvSara三ctcrwherename1.ike,processes%调整会话Sessions说明:指定用户会话和系统会话的总量。默认蚊,大于PROCESSES,以允许递归会话。就议修改后值为(Processes*1

16、20%)查询参数的SQ1.:se1.ectfromv$paraeterwherename1.ikeSessions%调整事务transactions说明:指定并行事务处理的景大数量.如果将该值设置得较大,将箝加SGA的大小.并可增加例程启动过程中分出的回退段的做量。默认值大于SESSK)NS,以实现遗归事务处理。值范围:一个数值.默认值:派生(1.1SESSIONS)窿议修改后值为(110%SESSIONS)查询参数的SQ1.:se1.ect*fromv$ParaMetRrwherename1.iketransactions%,调整Job数量参数名字:job_qucuc_processcs:它

17、指定每个例号的SNP作业队列进程的数量(SNPO.SW9.SNPA.SNPZ).要百动更新表快照或执行由DBMSJOB创立的请求.St议是用按实际JoB数来设置.值范图:0f1.36资询崭欲依SQ1.:se1.ectfromv$paractcrwherename1.ikejob_qucuc_proccsscs%,调整读取数据最大块数参数名字:db_:说明:在涉及一个完全连续扫描的一次I/O操作过程中读取的块的最大数量.班认值:是8.最大值128建议设:16或32衣询参政的SQ1.:se1.ect*fromv$paraeterwherename1.ikedb_设置1.ock_sga:由于几乎所有

18、的操作系琉都支持本领内存,所以即使我们使用的内存小于物理内存,也不能防止操作系统将SGA换到虚拟内存(SWAP),所以我们可以去试使得SGA镇定在物理内存中不被换到虚教内存中.这样月效率有好处在不支持这种功能的平台上,该值将被忽略。值范围:TRuEIFA1.SE.默认值:FA1.SEse1.ectfrexnvSparameterwherenaae1ike,1.ocksga%*要成谀量成true设置timed_statistics这个参数告诉OraC1.e记录下系统运行时的一些附加信息,这些信息在调试环境下是非常有用的,但是在实际运行环境下.赛议将这个功能关闭,因为这个附加功能将导致系统性能的下

19、降。没有使用时设置成FA1.SE调整最大回退段数Maxjo1.1.back-Segments:说明:指定SGA中高速姣存的回港段的最大大小.该数值指定一个例程中可同时保持联机状态(即状态为INUSE)的回返段的最大效量。值范31:2-5535觐认值:最大值(30,TRANSACT1.(WS/TRANSACTIONS.PER_R()UBCK_SEGMENT)SE1.ECTFROMV$PARAMETERWHERENAME1.IKEmaxro1.1.backsegments%查询每个回浪段可以效劳的事务致SE1.ECTFROMPARAMETERWHERENAME1.IKE,transactions_

20、pcr_ro1.1.back_scgfnent%一议值:(最大用户并发数transactions_per_ro1.1.back-segnent)*10%设置db_cache_advice:DBACACHE_ADV1.CE参数说明:为预计各种容置的南连陵存的行为而启用和禁用统计信息收集.在VSDBCACHEADVICE视图中收集信息.值范围:OFF-关闭咨询,并且不为咨询分配内存;ON-转开咨询(即:将带来CPU和内存开精):READY-关保咨询,但保存分配给咨询的内存.VSDBCACHEADY1.CE是显示了20个可能的缓冲CaChe大小的“脱宽”率(范围从当前大小的10%到200%)。:当你

21、把DBA_CACHE_ADV1.CE设置为ON时,OraeIe会从共享的池中“窃取RAM页面,这往往严重影响到了库cache。例如,如果设置DB_CACHE_SIZE为500m,Orac1.e就会从共享池中窃取相当多数量的RAM空间。为了防止这个问题,我们应该在IN1TORA文件中把DBA设置为DB_CACHE_ADVICE=READy。这样,OracIe会在数据库启动时侦分配RAM内存。版认值:OFF建议设置成READY调整优化模式optimizer_mode这个参数值的设定将影响到OniCIe处理SQ1.语句的方式.这个参数有以下5种设定值:RB0、CBO.FIRSTRoUS或A1.1.R

22、OUS这商个设定值将使OraC1.e便用芳于代价的优化方法来执行SQ1.语句.在这种优化方法下,OraCIe在执行SQ1.语句的时候,将重点考虑表的大小进行优化。例如,或抠库知道用户的CUSIOBer表有100Oo行纪录,而PhonetyPe表有3行纪录,那么在执行SQ1.语句的时候,系统将考虑这些因素。RU1.E这个谀定值如果使用,OraC1.C将使用内部的度量系统来决定SQ1.语句将如何被执行。比方.如果一歌表有索引,则OraCIe在执行SQ1.语句的时候就将使用索引进行优化.CHOoSE这个值是缺省设置.当用户有必希的信息时,则告诉0rac1。使用基于本钱优化的方法.反之,则使用基于规则

23、的方法8.对已存在的系统使用哪种方法进行优化,建议进行性能统计分析,然后收变系统所使用的优化方法。EOraC1.e第5版.第6版以来,许多系统用基于规则的优化方法很好地完成了优化。实践注明,如果在没有进行测试的情况下,贸然改交系统所使用的优化方法将对系施造成灾唯性的影哨。提示如果要煲用基于规则的优化方法进行系统优化,可将初始化叁蚁文件中参数OPtimiZeJmode的值设为ru1.e。有决定对系统所使用的优化方法进行改变之前,最好先建立一个测试系统对系统的性能进行评测,然后根裾评测结果断定是否改变优化方法。注意:要注意ana1yzer系统时间。调整优化模式OPtinIiZejindex_cac

24、hing说明:调整基于本钱的优化程序的假定值,即在媛冲区高速蝮存中期望用于嵌套循环联接的索引块的百分比。它将影响使用索引的嵌套循环联接的本钱。将该参数设置为一个较高的值.可以使嵌套循环联接相对于优化程序来说本钱更低。值范围:0-100%.默认值:0st1.t:fromv$p;Hiiiiif:riu1.r.nae1ike,ti11izer_index_caching%,建议设置成90调整优化模式optimizer_index_cost_adj说明:在考虑太多或大少索引访问路径的情况下,可以用来优化优化程序的性能。谈值越低,优化程序越容易选择一个索引。也就是说,如果将该值设置为50%.索引访问路径

25、的本钱就是正常情况下的一半。值范围:1-10000,默认值:100(一个索引访问路径的常规本钱se1.ectfromVjparaincterwherename1.ike,ptimizcr_index_cost_adj%,将这个参数设小表名索引代价要小于全表扫描,这样就使得使用CBo进行本钱计算时更倾向于使用索引扫描。建议把这个参数设置成30到50。调整优化模式optimizer_max_permutations对于多表连接查询,如果采用基千本钱优化(CB0),ORAC1.E会计算出很多种运行方案,从中选择出最优方案。这个参数就是设置OraC1.e究竟从多少种方案来选择岐优。如果设置大大,那么计

26、算最优方案过程也是时间比较长的。OraC1.e805和8i默认是80000,8速议改成2000。对于9i,巴经.默认是2000了。并行优化para1.1.e1._adaptive_mu1.ti_user:说明:片用或禁用一个自生应算法.旨在提高使用并行执行方式的多用户环境的性能.通越技系统负有B迫降任请求的弁行度.在启动点询同实现比功他.当PARA1.1.EJAUTQMATIjTUNING=TRUE时,其效果最正确.ParaHe1._automatic_tuning:说明:七栗设置为TRCE.Orac1.e杵为控电并行执.行的敦确定既伏(8。除了设置该券救外.你还宓须为奈统中的表i5置并行性.

27、值范国:TRUEFA1.SE欺认情:FA1.SE如PARA1.1.E1.-NToMATIJTUNING是设置FA1.SE.OraeIC分配并行执行绫冲上在上SHAR11.P(JO1.在ORAC1.E10缺省安装钝是JOOM建议SHARED-P0O1.=200M-400M参数para1.1.e1._max_serversJparameterOrMIe一个显*的加强是自动决定OpQ并行的程泉。由于OrM1.e清是我分多中C叩的数量,它会自动分配适宜的子进卷的数量来费升并行查询的喇应时睥.当名,会有其它的外部因素,比方我的划分以及磁盒侑入/出子系统的布局等.但是根据CP_8Unt来谀JEPara1.

28、1.e1.naXserversftOrac1.o一个合理的侬据兴it择并行的钱.叟.由干QnICIe的并行操作产宣依赧效劳器上CptJ的数量.para1.1.e1.mxfervers会被设置成效分导上CPU的数量,知栗在一台效劳后上近行多个实例.则默认值尢大了.会导致4度的:eaf交换如产它的CW负担.并行的程度还色载于目标表中分区的敏I1.因比Para1.Ie1.naX_Server3应该设置或足罅大以允许OraCIe为母个资询让挣量正瑜我贵的并行于丧询.para1.1.e1._threadsjper_cpu:说明:说明一个CPU在并行执行过程中可处理的进程或姚程的敷置.并代化并行白奘应It

29、法和负极均衡算法.如累计Jr机在执行一个他熨it询片有短负荷的边*.应我小该数演.慎范围:任何率Wt1.1.依/值:根据操作系统而定(司常为2)CPUS=4建议PARA1.1.E1._THREADS_PEi1.CPU=2PARA1.1.EkMAXSERVERS=64CPUS=8JtiitPARA1.1.E1.-THREADS_PE1.1.CPU=4PARA1.1.E1.一MR)1.SERVERS-256para1.1.e1._max_servers:说明:指定一个例基的并行执行效劳g或并行恢复过线的最大敷置.如果需要.例程启动时分配的资询效劳程的兹宗将增和到该效.值范EB;D-256欧/U:由

30、CPI1.COINT.PARA1.1.E1.-AVTOMArICTUMING和PARA1.1.E1._ADAPTIVE_NU1.T1.USER或定ara1.1.e1._nin_servers说明:指定为并行执行启动例程后,Orac1.e创立的查沟效劳荒展程的最小效值范围:DPARA1.1.E1._MAX_SERYERS.欧认值:0CPUS=4建议PARA1.1.E1.-MAX.SERVERS=64CPUS:8建议PARA1.1.E1.MA)1.SERVERS=256改表或视图并行度A1.TERTAB1.Edepartment1PARA1.1.E1.10;A1.TERTAB1.Edepartme

31、nt2PARA1.1.E1.5;CREATEVIEHcurrentsa1.e*;ASSE1.ECT/*-PARA1.1.E1.(P.20)/EROM“浦P:调整Checkpoints一个CheCkPOint是ORAC1.E自动执行的一种操作,当检受点操作时,散票库中的所为段冲区会与回盛立,所有驻据库的控制文件被更新.Checkpoint疑繁发生会加快数据库的恢复,但是增加了1/0次数,会降低系统的性能。修改INIT.ORA文件中的参数1.0G_CMECKP0INT_TIME01.:T和1.0G工HECXP3M1.iNERYA1.,增大这两个参数会减少】/0次弱.提高系统性能.内存调整SGA调优

32、调优后的SGA区所占用的内存不应超过系统物理内存大小的60&se1.ect*fromVSParamCtCrWhCrCnac1.ike,SRajnaX_SiZCiV建议设置SGA最大值为系统物理内存大小的58,60%.要思与的问息:1:除去06和一些其他开错,能给ORAe1.E使用的内存有多大2:On1.CIe是&1.bitor32bit.32bit通常SGA1.7G的限制(某曼OS的处理或者InNDOwS上市特定可以支持到2C以上甚至到达&7G)3:sortareasize、hashareasize这两个参数在MTS下都是用于PGA,不属于SGA,是为每个SeSSiOn隼独分配的,在我们的效劳

33、器上除了OS+SGA.一定要考虑达西科部.OS笠用内存+SCA+seesion*(sort_areasize+hash_areasize+2M)息物理RAM为好这样归结过来,假定OraC1.e是32bit,效劳叁RAi1.大于2C,注意你的PGA的情次,.则Jt议sharedpoo1.sizedatabuffer1.ogbuffer1.argepoo1.size+javapoo1.size1.6G注意满足上期的原则的参础上可以参考如下设置如果512M内存:建议Share(1.POO1.SiZe=50M.databuffer=200M如果IG内存:熊议sharedPOO1.Siz。=100M.d

34、atabuffer=500H如果2G:Share(1.POO1.SiZe=150M,databuffer=1.2G物理内存再大已经跟电数没有关系了假定64bitORAC1.E内存4C:sharedpoo1.size=200M,databuffer=2.5G内存8G:Share(1.DoO1.SiZe=300M,databuffer=5G内存12G:Share(1.POO1.SiZe=300M800M,databuffer=8G以上仅为参考值.不同系统可能差异比较大,密要根据具体情况调整.关于内存的设置,要再进行细致的调整,起的作用不大,但可根据StatSPaCk信息和v$ystem_event

35、,vSsysstat,v$e$tat,v$1.atch等view信息来考虑微调。杳询系统空闲空间的情况se1.ect*fronVSSgiIS1.iHwheren100%se1.ectVSSgaSta1.POo1.to_number(V$Paramet.er.va1.ue)va1.ue,vjsgastat.BYTES.(v$sgastat.BYTES/v$paraeter.VA1.UE)*100percentree*fromVjpararaeter1VSSgaStatwherev$sgastat.NAME=*freememoryandvSparameter.NAME=,shared_poo1._

36、size调整数据缓冲区databuffer,在做了前面的设置后,凡可以提供应OraCIe的内存.都应该给databuffer(db_b1.ocksizedb_b1.ock_buffers)在9i中可以是db_cachesize。se1.ectname,va1.uefromv$sysstatwherenameinCdbb1.ockgets,consistentgets,physica1.reads)M#:dbb1.ockgets表示从内存读取数据;ConSiStentgets表示读取一致;physica1.reads从磁盘数据文件读取的数据:PhySiCaIreads接近于O.就是说政据全部来自

37、数据姬冲区.杳询数据字典Y$1.aich_Chi1.dren,可以检测数据埃冲区是否有空闲,得到的空闱冲突比例应该是接近0:se1.ectchi1.d#.s1.eeps/getsratiofromv$1.atch_chiIdrenwherename=cachebuffersIruchain使用数幅字典SYSSTAT计算豌据媛冲区的命中率OHTRAT1.0),结果在90%以上,否则必须增加数抠媛冲区大小.se1.ecta.va1.ue+b.va1.ue1.ogica1.reads*,c.va1.uephysreads,round(100*(a.va1.ue+b.va1.ue)-c.va1.ue)

38、/(a.va1.ue+b.va1.ue)BUFFERHITRATIOfromSsysstata,vSsysstatb,VSSySStatcwherea.statistic#=38andb.statistic#=39andc.statistic#=40下面记录数据库启动进始的逆辑读和物理读.统计值会增加的.se1.ectsum(decode(name.consistentgets.va1.ue,0)consistent.sum(decode(name.dbb1.ockgets,va1.ue,0)dbb1.ockgets,sum(decode(name,physica1.reads,.va1.ue

39、,0)physica1.,round(sum(decode(name.consistentgets,va1.ue.0)+sum(decode(name.dbb1.ockget.va1.ue,0)-sum(decode(name,physica1.reads.va1.ue.0)/sum(decode(name.dbb1.ockgets.va1.ue.0)*100.2)hitratiofromv$SySStat如果数据库舍有1.OB类型数搏,在计算数据媛冲区命中率时,可以使用下面的计算方法.Se1.ectname,va1.uefrom丫$SySStatwherenamein(4session1.o

40、gica1.reads,physica1.reads.,physica1.readsdirect.,physica1.readsdirect(Iob),)显不比会话全部读取数据量(sessionIOeiCaIread;数据文件读取数推量(physica1.reads):馈冲区读取数据量(physica1.readsdirect);1.0B类型在媛冲区读取数据量Se1.ectname,va1.uefromvSsysstatwherenamein(session1.ogica1.reads,physica1.reads.physica1.readsdirect,physica1.readsdire

41、ct(Iob),)命中率公式:HITRATIO=1-(physica1.reads-physica1.readsdirect-physica1.readsdirect(Iob)/session1.ogica1.reads)数据麻新增了数据字元Vwb_CaChC_adYicc,用来计算DBCACHESIZE缗加时均理读的情笈。范围从当前大小的10%到200%).se1.ectsizeforestimate,buffersforestimate,estd_PhySiCa1.readfactor.estd_PhySiCa1.readSfromvSdb_cache_advicewherename=DE

42、FAU1.TANDb1.ocksize=(se1.ectva1.uefromMparame1.erwherename1.ikedb_b1.ock_size)andadvice_status=ON受询数据字典“buffCJPOOI确认数据库缓冲区设置状况。se1.ectname.sun(buffers)fromv$buffer_poo1.groupbyname.b1.ocksizehavingsun(buffers)0在ORAe1.E91俄定媛冲区对于哪一个馈冲区设置的。se1.ectname,b1.ock_sizc.sun(buffers)fromVSbUffeJPOO1.groupbynam

43、e.b1.。Ck-SiZehavingsum(buffers)0buffer_poo1._keep缓冲区bufferpoo1._keep这彳蚊格谈冲池用f存储执行全表扫描的小表.buffer_poo1.keep从dbb1.ock_buffers中分配,因此也要小于dbJnockJmffcrs.设置好这些叁数后.就可以把常用财象永久钉在内存里。适用于OraC1.C8i.建设值暂时再仪如何格小麦放入keep池中.a1.tertab1.etabIenamestorage(hufferjxo1.keep);buffer_poo1._recyc1e缓冲区buffer_poo1._recyc1.e这个池用

44、来保存迸行全表扫描的非常大的表,适用于OraCIQ8i然设值智时用议调整共享缓冲区缓存不能设置Sharee1.POO1.SiZe过大,通常应该控制在2O(W-3OOM,如果是ORAC1.EERP一类的使用了很多存储过程函就.包或者很大的系统,可以考虑增大$hared_POO1.SiZe.但是如果超过500M可能是危建的,到达IG可能会追成CPU的严重负担,系琉甚至辣痪“所以SharOdPOO1.size如果超过30OM运命中率不高,那么应该从应用上找原因而不是一味的增加内存,Sharet1.POO1.SiZe过大主要增加了管理负担和IatCh的开料共享池根本上包括两个主要的结构:数据字典缓存、

45、库馒存、共享的SQ1.区域.当一条输入/输出请求发出后.高速缓存度看该请求要求的数据是否巴在内存中.如果数据在内存的话.它亲自答复谈请求,返回请求的数据.这狒为一个命中(hit.如果数据不在内存的话,就会将一次到磁言的访问.这被称为一个遗漏(miss).对于几乎所有的高速缓存装置来说,保证高效性能的准则是90%+命中率,命中率可以被定义为K)OX(1.00-(遗漏的数量/请求的数量),其中请求的数量=遗漏的数量,命中的数量。例如.饺设你的高速线存有4个遗漏和46个令中.那么办的命中率是100X(1.00(4/50)=100X(1.00-0.08)=92%,这个数字非常好.高速缓存通常由一个最近

46、最少使用的1.RU)算法来管理.该算法保证在任何均定的时刻,最近使用最多的(MR1.D数据帔保存在高速坂存中并且最近最少使用的数据技拿走.当OraCIC芦一条SQ1.语句进行语法分析玲,通过把一个数学公式应用到SQ1.语句的字母数字文本并使用该结果在高速陵存中存猪(供以后查找和利用它.Orac1.e便可以在库缓存(1.ibrarycache)中为该SQ1.语句分配一个Sq1.区。换句话说,它使用一个哈西第金(hashfuntion)。为了一条语句可以被史复使用,该语句必家是相同的。说明:以字节为单位.指定共享池的大小。共享池包含如:共享游标,存储的过程,控制结构郛并行执行消息统冲区等时象。较大的值能改善多用户系统的性能。值范围:3(K)KB-根据操作系统而定,默认值:如果是64位操作系统.值为64MB;其他情况下.值为16MB.监控共享缓存区的命中率se1.ectSUm(PinhiIS-re1.oads)/SUm(Pins)hi1.radio*,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号