付费下载
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
我们对SQL语句进行调优时,非常重要的一个方法就是分析SQL的执行计划。查看Oracle中SQL语句的执行计划有很多方法,例如通过PL/SQLDeveloper、EM或者SQLPLUS工具等。这里以SQLPLUS为例。在SQLPLUS使用命令SETAUTOTRACEON后,可以在查询结果后看到该语句的执行计划。也可以使用SETAUTOTRACETRACEONLY命令,只返回执行计划而不返回查询结果。例如执行一个简单的全表扫描语句,返回执行计划如下:
从上述执行计划可以看到,对表的访问为全表扫描(TABLEACCESSFULL)。这种情况一般是没有索引或者索引不可用。我们执行的SQL语句是select*fromhr.employees,该语句没有指定搜索条件,所以也只能是全表扫描。接下来我们还可以看到一些关于执行计划的统计信息。对于这些信息的分析非常重要。通过查询Oracle的文档,可以看到具体解释如下:RecursiveCalls:Numberofrecursivecallsgeneratedatboththeuserandsystemlevel.OracleDatabasemaintainstablesusedforinternalprocessing.Whenitneedstochangethesetables,OracleDatabasegeneratesaninternalSQLstatement,whichinturngeneratesarecursivecall.Inshort,recursivecallsarebasicallySQLperformedonbehalfofyourSQL.So,ifyouhadtoparsethequery,forexample,youmighthavehadtorunsomeotherqueriestogetdatadictionaryinformation.Thesewouldberecursivecalls.Spacemanagement,securitychecks,callingPL/SQLfromSQL—allincurrecursiveSQLcalls.(意思大概是我们的SQL执行中需要对数据库系统的一些内部表进行操作,如关于空间管理的检查、安全检查以及调用PL/SQL等,这些都会产生递归调用。)DBBlockGets:NumberoftimesaCURRENTblockwasrequested.Currentmodeblocksareretrievedastheyexistrightnow,notinaconsistentreadfashion.Normally,blocksretrievedforaqueryareretrievedastheyexistedwhenthequerybegan.Currentmodeblocksareretrievedastheyexistrightnow,notfromapreviouspointintime.DuringaSELECT,youmightseecurrentmoderetrievalsduetoreadingthedatadictionarytofindtheextentinformationforatabletodoafullscan(becauseyouneedthe"rightnow"information,nottheconsistentread).Duringamodification,youwillaccesstheblocksincurrentmodeinordertowritetothem.(DBBlockGets:当前模式块被请求的数量。当前模式块与一致性读取块相对,当前模式块是数据块现在的状态,而一致性读取块是放在回滚段中的数据块的旧的映像。DBBlockGets请求的数据块在buffercache可以得到满足。)ConsistentGets:Numberoftimesaconsistentreadwasrequestedforablock.Thisishowmanyblocksyouprocessedin"consistentread"mode.Thiswillincludecountsofblocksreadfromtherollbacksegmentinordertorollbackablock.ThisisthemodeyoureadblocksinwithaSELECT,forexample.Also,whenyoudoasearchedUPDATE/DELETE,youreadtheblocksinconsistentreadmodeandthengettheblockincurrentmodetoactuallydothemodification.(ConsistentGets:请求的一致性读取模式下的数据块的数量。ConsistentGets的数据请求在回滚段Buffer中得到满足。)PhysicalReads:Totalnumberofdatablocksreadfromdisk.Thisnumberequalsthevalueof"physicalreadsdirect"plusallreadsintobuffercache.(PhysicalReads:请求的数据块在buffercache中没有的话,就需要读取磁盘上的数据文件。这里指的就是从磁盘读到BufferCache的数据块数量。)Redosize:对数据块进行修改时,会将旧的内容写入回滚段,用于一致性读取操作。这里的redosize指的是操作产生的redo信息数量,单位是字节。Sorts(disk):Numberofsortoperationsthatrequiredatleastonediskwrite.SortsthatrequireI/Otodiskarequiteresourceintensive.TryincreasingthesizeoftheinitializationparameterSORT_AREA_SIZE.(Sorts(disk):排序操作首先会使用内存空间的SORT_AREA_SIZE,如果不足则会使用临时表空间,这样就产生了磁盘访问。磁盘中的排序非常消耗资源,建议调整SORT_AREA_SIZE参数的值。)通常在第一次访问某个表时,会产生PhysicalReads,因为要从数据文件读取数据块。但
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026春招:药明康德面试题及答案
- 贺立平课件教学课件
- 贺卡介绍课件
- 货运驾驶人安全培训记录课件
- 货运安全常识培训总结课件
- 医疗保险市场潜力与挑战
- 医疗器械研发与知识产权保护
- 医院康复科患者护理礼仪
- 医疗护理技术操作规范与考核标准
- 疼痛管理策略与实践
- 河南洛阳炼化宏达实业有限责任公司招聘笔试题库2026
- 仓库租赁合同协议书
- 2025年母子公司间投资合同范本
- 2025山西朔州市公安局招聘留置看护岗位辅警260人笔试考试参考试题及答案解析
- 医院安全生产下一步工作计划
- 实验室质控考核管理
- 2025青海省生态环保产业有限公司招聘11人笔试考试参考题库及答案解析
- 2026梦工场招商银行太原分行寒假实习生招聘考试笔试备考题库及答案解析
- 1、汽车配线、电子连接器及保护装置
- 小学五年级那一刻我长大了600字
- FZ/T 10007-2018棉及化纤纯纺、混纺本色纱线检验规则
评论
0/150
提交评论