Chinaunix首页 | 论坛 | 博客
  • 博客访问: 3494795
  • 博文数量: 738
  • 博客积分: 1860
  • 博客等级: 上尉
  • 技术积分: 7745
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-07 08:51
个人简介

偶尔有空上来看看

文章分类

全部博文(738)

文章存档

2023年(75)

2022年(134)

2021年(238)

2020年(115)

2019年(11)

2018年(9)

2017年(9)

2016年(17)

2015年(7)

2014年(4)

2013年(1)

2012年(11)

2011年(27)

2010年(35)

2009年(11)

2008年(11)

最近访客

分类: Oracle

2019-09-03 18:06:57

标题或者叫清理SQL、执行计划

主要是用dbms_shared_pool这个包

测试

create table test333 as select * from tab where rownum<4;

select * from test333;

 

查看语句执行情况:

col sql_text for a60

set lin 200 pages 100

col SQL_ID for a15

select sql_text,sql_id,address,hash_value,executions,loads,parse_calls,invalidations from v$sqlarea v

 where sql_text like '%test333%' and sql_text not like '%sqlarea%';

 

清理掉,用addresshash_value

exec sys.dbms_shared_pool.purge('00000000C0DE77E8,485215222','C')

 

oracle 10g上还需要设置以下事件才起作用

alter session set events '5614566 trace name context forever';

 

实在不行就把共享池全部清理(不推荐)

alter system flush shared_pool;

 

对象授权(回收)、DDL、删除不会清除shared pool中相关内容,但是INVALIDATIONS可能会变。

阅读(1339) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~