大家好,对于Oracle我是外行,但是目前在做一个性能分析的时侯急需要一些Oracle的监控数据,目前我希望实现这样的功能:每隔一定时间(比如5秒)取得Oracle的总连接数和用户标示为“test“的连接数,然后将这些数据保存(可以为任何形式,只要以后能够调用到就可以了),最后最好能有一个汇总的结果,即平均连接数。Oracle数据库部署在一台redhat es4上,版本为10g
目前我用select count(*) from v$session可以取得总连接数,但是不知道怎么定时动态存取,还有要查询一定条件的连接数(比如特定用户)不知道怎么做?由于项目时间紧急,希望得到各位大侠的协助。先行谢过了!
目前我用select count(*) from v$session可以取得总连接数,但是不知道怎么定时动态存取,还有要查询一定条件的连接数(比如特定用户)不知道怎么做?由于项目时间紧急,希望得到各位大侠的协助。先行谢过了!
解决方案 »
- oracle 数据库学习问题
- pl/sql求查询语句
- 求个Oracle学习群, if(LJBH=Material_code &% TPBH=TrayCode) 报错
- oracle 大表问题,高分
- 在UNIX 下 如何限制ORACLE登陆的网段,让别的网段不能登陆!!!!!
- 再线请教一SQL*LODER问题
- 【Oracle常见问题与解答】
- 请问各位大侠哪里有下oracle8.05?
- 请教高手:一个关于UPDATE的问题(从一个表中查询多条记录并存与另一个对应表中)
- oracle中,一个表的某个字段想设置成为自增的该怎么操作?\
- 新手问题1:重起计算机后设置的初始化参数就还原成默认值了?
- Oracle10g 简单问题
里面会的.你可以半小时一个快照.
2.写个过程,取得数据后往这个表里插入,用job定时调用。
3.对表数据进行分析。
select decode(grouping(t.username),1,'合计',t.username) machine ,count(*) num, sum(decode(t.STATUS,'ACTIVE',1,0)) active
from v$session t
--where t.STATUS='ACTIVE'
group by rollup(t.USERNAME)
order by num desc
select username,count(*) from v$session group by username;
ps -ef | grep oracle | wc
ps -ef | grep oracle | wc
命令取得的数据和直接在sqlplus中用select count(*) from v$session取得数据不同,有一次一个操作系统中取得的是47,sqlplus中取得的是33,请问是怎么回事?