ORACLE-SQL性能优化(内部培训资料).docx
《ORACLE-SQL性能优化(内部培训资料).docx》由会员分享,可在线阅读,更多相关《ORACLE-SQL性能优化(内部培训资料).docx(50页珍藏版)》请在优知文库上搜索。
1、ORAC1.ESQ1.性能优化系列(一)1,选用适合的ORAC1.E优化器ORAC1.E的优化法共有3种:a.RU1.E(基于规则)b.COST(基于本饯)c.CHOOSE(选择性)设置缺省的优化舞.可以通过对init.ore文件中OPTINIZERJioDE参数的各种声明.如RU1.E.COST.Q1.OOSh:.A1.1.RoWS.FIRST.R(WS.你当然也在SQ1.句圾或是会话(session)级对其进行/是.为了使用基于本钱的优化器(CB0,Cost-BasedOpti.izer),你必须经常运行ana1.yze命令.以箫加数据库中的对象统计信息(ObjeCtstatistics)
2、的准确性.如果数据康的优化器模式设置为选择性(Q1.oOSE),那么实际的优化器模式将和是否运行过ana1.yze命令有关.如果tab1.e巳垃械ana1.y次过,优化器模或将自动成为CBO,反之,数据库朽采用RU1.E形式的优化器.在缺省情况下,0RAC1.E采用CHOoSE优化器,为了防止那些不必要的全表扫描(fu1.1.tab1.escan).你必须尽量防止使用C1I00SE优化器,而直接采用基于规则或者基于本钱的优化器.2 .访问Tab1.o的方式ORAC1.E杲用为种访问表中记录的方式:a.全表归播全表扫描就是顺序地访问表中每条记录.ORAC1.E采用一次读入多个数据块(databa
3、seI)IoCk)的方式优化全表扫1) .通过ROW1.D访问表你可以采用梦于R(W1.D的访问方式情况.提高访问表的效率.,ROUID包含了表中记录的物理位置信息.ORAC1.E采用密引(INDEX)实现了数据和存放数据的物理位置(ROinD)之间的联系.通常索引提供了快速访问Ro1.n)的方法,因此那些基于东引列的丧谓就可以得到性能上的荏商.3 .共享SQ1.语句为了不查复解析相同的SQ1.语句.在第一次解析之后,ORAC1.E将SQ1.语句存放在内存中.这块位于系统全局区域SGA(systcg1.oba1.area)的共享池(Sharedbufferpoo1.)中的内存可以被所有的我据库
4、用户共享.因此.当你执行一个SQ1.语句(有时被称为一个势标)时.如果它和之前的执行过的语句完全相同,ORAC1.E就能很快荻得已经祓解析的语句以及最好的执行路径.ORAC1.E的这个功能大大地提高了SQ1.的执行牲能并节省了内存的使用.可惜的是ORAaE只对简隼的麦提供高速短冲(Caehebuffering).这个功能并不适用于多表连接登询.联票库管理员必须在init.ora中为这个区域设置适克的叁数.当这个内存区域越大,就可以保存更多的语句,当然被共享的可能性也就越大了.当你向ORAC1.E提交一个SQ1.语句.ORAC1.E会首先在这块内存中查找相同的语句.这里常要注明的是.ORAC1.
5、E时的者采取的是一种严格匹配.要达成共享.SQ1.语句必须完全相同(包括空格,换行等).共享的语句必须满足三个条件:A.字符级的比较:当前被执行的话句和共享池中的语句必须完全相P1.例如:SE1.ECT*FROMEMP;和以下每一个都不同SE1.ECT*fromBMP:Se1.ectFromEmp;SE1.ECT*FROMEMP;B.两个语句所指的对猊必须完全相同:例如:用户对款名如何访问JackSa1.1.imitprivatesynonymWorkcitypub1.icsynonymPIanJdetai1.pub1.icsynonymJi1.1.sa1._1.imitprivatesyno
6、nymWork_citypub1.icsynonymP1.antdetai1.tab1.eowner考虑一下以下SQ1.语句能否在这苒个用户之同共享.SQ1.能否排享/原因不能每个用户都有一个PriVatesynonym-Sa1.1.imit,它f1.是不同的对象se1.ectcount(0fromworkcitywhereSdesC1ikeNEW;能两个用户访问相同的对象pub1.icsynony-Work_Cityse1.ecta.sdesc,b.1.ocationfromworkcitya.p1.antdetai1.bwherea.cityid=b.cityid不能用户jack通过Pri
7、VateSynOnyW访同PIanJdetai1.而ji1.1.是表的所有者.龙条不同.C.两个SQ1.语句中必须隹用相同的名字的绑定变量(bindvariab1.es)例如:第一缎的两个SQ1.语句是相同的(可以共享),而第二道中的两个语句是不同的(即使在运行时.戒于不同的绑定变量相同的值)a.se1.ectpin.namefrompeop1.ewherepin=:b1.k1.pin:se1.ectpin,namefrompeop1.ewherepin=:b1.k1.pin:se1.ectpin.namefrompeop1.ewherepin=:b1.k1.ot-ind:se1.ectpin
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- ORACLE SQL 性能 优化 内部 培训资料
