oracle 查看占用游标情况

1、Oracle查看当前打开的游标数目

 
  1. SQL> select count(*) from v$open_cursor;  
  2. COUNT(*)  
  3. 17494  

2、修改Oracle最大游标数

 
  1. SQL> alter system set open_cursors=1000 scope=both; 

系统已更改。

 
  1. SQL> show parameter open_cursors;  
  2. NAME TYPE VALUE  
  3. open_cursors integer 1000   

 

系统运行了一段时间报错:java.sql.SQLException: ORA-01000: 超出打开游标的最大数

查看数据库当前的游标数配置slqplus:show parameter open_cursors;

查看游标使用情况:

select o.sid, osuser, machine, count(*) num_curs
from v$open_cursor o, v$session s
where user_name = 'user ' and o.sid=s.sid
group by o.sid, osuser, machine
order by  num_curs desc;

查看游标执行的sql情况:

select q.sql_text
from v$open_cursor o, v$sql q
where q.hashvalue=o.hash_value and o.sid = 123;

如果程序释放资源没有问题,则加大游标数。

 

select block_size, size_for_estimate, size_factor, estd_physical_read_factor, estd_physical_reads from v$db_cache_advice;

 

解释一下v$db_cache_advice的作用,Oracle利用这个视图对当前数据库db_cache_size大小提出一建议,提出了20个db_cache_size大小及相关的物理读的估计值,估计的db_cache_size大小的范围从当前的10%到200%,以10%为一个增加单位。 
下面解释几个列的含义 
size_for_estimate:估计的cache size大小 
size_factor:   估计的cache size大小与当前大小的比值 
estd_physical_reads:在估计的cache size大小情况下,会产生的物理读数量 
estd_physical_read_factor:估计的物理读数量与当前物理读数量的比值。 

转自:http://blog.sina.com.cn/s/blog_3d679fa501010i7z.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值