分享7个实用脚本--Oracle数据库游标数总结
2023-03-14 22:23:08 时间
今天偷个懒,总结一下Oracle游标数的一些常用sql,下面一起来看看吧~
1. 查看系统游标数(最大游标数)
- select value from v$parameter where name = 'open_cursors';
- show parameter open_cursors;
2. 查看当前打开的游标数目
- select count(*) from v$open_cursor;
3. 查看游标使用情况
- select o.sid, osuser, machine,o.sql_id,o.sql_text,o.cursor_type, count(*) num_curs
- from v$open_cursor o, v$session s
- where user_name = 'GLOGOWNER'
- and o.sid = s.sid
- group by o.sid, osuser, machine,o.sql_id,o.sql_text,o.cursor_type
- order by num_curs desc;
4. 修改Oracle最大游标数
根据游标占用情况分析访问数据库的程序在资源释放上是否正常,如果程序释放资源没有问题,则加大游标数。
- alter system set open_cursors=2000 scope=both;
5. 各用户的打开游标总数
- SELECT A.USER_NAME, COUNT(*) FROM V$OPEN_CURSOR A GROUP BY A.USER_NAME;
6. 查找数据库各用户各个终端的缓存游标数
- SELECT AA.USERNAME, AA.MACHINE, SUM(AA.VALUE)
- FROM (SELECT A.VALUE, S.MACHINE, S.USERNAME
- FROM V$SESSTAT A, V$STATNAME B, V$SESSION S
- WHERE A.STATISTIC# = B.STATISTIC#
- AND S.SID = A.SID
- AND B.NAME = 'session cursor cache count') AA
- GROUP BY AA.USERNAME, AA.MACHINE
- ORDER BY AA.USERNAME, AA.MACHINE;
7. 查找数据库各用户各个终端的打开游标数
- SELECT AA.USERNAME, AA.MACHINE, SUM(AA.VALUE)
- FROM (SELECT A.VALUE, S.MACHINE, S.USERNAME
- FROM V$SESSTAT A, V$STATNAME B, V$SESSION S
- WHERE A.STATISTIC# = B.STATISTIC#
- AND S.SID = A.SID
- AND B.NAME = 'opened cursors current') AA
- GROUP BY AA.USERNAME, AA.MACHINE
- ORDER BY AA.USERNAME, AA.MACHINE;
相关文章
- 数据孤岛是业务效率的无声杀手
- 2023展望:新的一年将给大数据分析领域带来什么?
- 阿里云ADB基于Hudi构建Lakehouse的实践
- 大数据在医疗保健领域的使用案例
- 微软增加说明:KB5021751 更新扫描已经 / 即将过时 Office 过程中不会触碰用户隐私
- 2022 Gartner全球云数据库管理系统魔力象限发布 腾讯云数据库入选
- 场景化、重实操,分享一个实时数仓实践案例
- Arctic的湖仓一体践行之路
- 分布式计算MapReduce究竟是怎么一回事?
- 淘系数据模型治理优秀实践
- 大数据分析对医疗保健的影响
- 当我们说大数据Hadoop,究竟在说什么?
- 2022年及以后大数据的五个发展趋势
- 网易严选离线数仓治理实践
- 2023 年数据治理趋势
- 一份“靠谱”的年度经营计划,你学会了吗?
- 漫谈对大数据的思考
- 测试一下,读懂数据的能力,你有吗?
- 用艺术的眼光探索数据之美
- 聊聊数据分析成果如何落地