欢迎来到天天文库
浏览记录
ID:1157207
大小:29.50 KB
页数:5页
时间:2017-11-08
《如何清除某条sql在库缓存中的执行计划》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、如何清除某条SQL在库缓存中的执行计划如何清除某条SQL在库缓存中的执行计划个人分类:OracleDBA日常管理过程中会遇到需要把特定的sql语句的执行计划从sharedpool中清除或者需要重新生产新的执行计划的要求。通常的altersystemflushshared_pool;或者重新执行信息统计又会造成较大的影响,所以可以使用oracle提供的dbms_shared_pool.purge来清除某个特定的sql的执行计划。下面是关于dbms_shared_pool.purge的官方介绍:ThesyntaxfortheDBMS_SHARED_POOL.PURGEpackageis:proc
2、edurepurge(namevarchar2,flagcharDEFAULT'P',heapsnumberDEFAULT1);Explanation:Purgethenamedobjectorparticularheap(s)oftheobject.Inputarguments:name:Thenameoftheobjecttopurge.Therearetwokindsofobjects:PL/SQLobjects,triggers,sequences,typesandJavaobjectswhicharespecifiedbyname,指定'address','hash_value'的
3、SQL游标。SQLcursorobjectswhicharespecifiedbyatwopartnumber.Thevalueforthisidentifieristheconcatenationofthe'address'and'hash_value'columnsfromthev$sqlareaview.标记位是可选的。如果忽略了该参数,则该包默认是包,过程,函数的名称并且忽视名称。否则,该参数就指定一个对象类型。标记位是大小写敏感的。flag:Thisisanoptionalparameter.Iftheparameterisnotspecified,thepackageassume
4、sthatthefirstparameteristhenameofapackage/procedure/functionandwillresolvethename.Otherwise,theparameterisacharacterstringindicatingwhatkindofobjecttopurgethenameidentifies.Thestringiscaseinsensitive.Thepossiblevaluesandthekindsofobjectstheyindicatearegiveninthefollowingtable:ValueKindofObjecttokee
5、p---------------------------Ppackage/procedure/functionQsequenceRtriggerTtypeJSjavasourceJCjavaclassJRjavaresourceJDjavashareddataCcursor--游标heaps:heapstopurge.e.gifheap0andheap6aretobepurged.1<<0
6、1<<6=>hex0x41=>decimal65.sospecifyheaps=>65.Defaultis1i.eheap0whichmeansthewholeobjectwillbepurged.实验环
7、境版本:11.2.0.1.0dbms_shared_pool.purge只能通过dba才能使用oracle@rac1:rac1/home/oracle>sqlplusyang/yangSQL*Plus:Release11.2.0.1.0ProductiononFriJul815:32:432011yang@rac1>createtableyangtab(idint);Tablecreated.yang@rac1>select*fromyangtab;norowsselectedyang@rac1>selectaddress,hash_value,executions,parse_calls2
8、fromv$sqlwheresql_textlike'select*fromyangtab%';ADDRESSHASH_VALUEEXECUTIONSPARSE_CALLS-----------------------------------------------00000001736EFBB8333795103611yang@rac1>execdbms_shared_pool.purge('0000000
此文档下载收益归作者所有