Sunteți pe pagina 1din 3

Set pages 100 Col SESS for a15 Col SESS for a15 col EVENT for a30

col TY for a10 SELECT lpad('-->',DECODE(a.request,0,0,5),' ')||a.sid sess ,c.status , a.type , b.event , b.seconds_in_wait , c.module FROM gV$LOCK a, gv$session_wait b, gv$session c WHERE a.id1 IN (SELECT id1 FROM gV$LOCK WHERE lmode = 0) and a.si d=b.sid and b.sid=c.sid and b.seconds_in_wait > 0 ORDER BY id1,request; select sid,sql_text from gv$session ses, gv$sqlarea sql where ses.sql_hash_value = sql.hash_value(+) and ses.sql_address = sql.address(+) and ses.sid='&oracle_sid'; col ORACLE_USERNAME for a13 col OS_USER_NAME for a10 col object_name for a40 PROMPT "PRESSS ENTER FOR ALL SIDs" select a.ORACLE_USERNAME,a.OS_USER_NAME,a.SESSION_ID,d.status,b.object_name,c.NA ME "RBS NAME", decode(a.LOCKED_MODE,1,'No Lock',2,'Row Share',3,'Row Excl',4,'Share',5,'Shr Row Excl',6,'Exclusive',null) "LOCK MODE", d.module from v$locked_object a,dba_objects b,v$rollname c,v$session d where a.OBJECT_ID=b.object_id and a.XIDUSN=c.USN and a.session_id=d.sid and a.SESSION_ID like '&sid' order by session_id; SELECT vs.sid, vs.inst_id,vs.osuser,vw.event,vw.p1,vw.p2,vw.p3 ,vt.sql_text , vs .program FROM gv$session_wait vw, gv$sqltext vt , gv$session vs WHERE vw.event = 'library cache pin' AND vt.address=vs.sql_address AND vs.inst_id = vw.inst_id AND vs.sid = vw.sid; select p.pid,p.SPID,s.SID from v$process p,v$session s where s.paddr = p.addr and s.SID = &SID; select * from dba_queue_tables where queue_table='FND_CP_GSM_OPP_AQTBL'; select * from dba_queues where queue_table='FND_CP_GSM_OPP_AQTBL'; -- find out the tablespace for this aq object: select distinct A.OWNER, A.QUEUE_TABLE, b.tablespace_name from dba_queues a, dba_segments b, dba_tablespaces c where a.queue_table = b.segment_name and b.tablespace_name = c.tablespace_name and a.queue_table='FND_CP_GSM_OPP_AQTBL' order by 3; SELECT vs.username, vs.osuser, vh.sid locking_sid,

vs.status status, vs.module module, vs.program program_holding, jrh.job_name, vsw.username, vsw.osuser, vw.sid waiter_sid, vsw.program program_waiting, jrw.job_name FROM v$lock vh, v$lock vw, v$session vs, v$session vsw, dba_scheduler_running_jobs jrh, dba_scheduler_running_jobs jrw WHERE (vh.id1, vh.id2) IN (SELECT id1, id2 FROM v$lock WHERE request = 0 INTERSE CT SELECT id1, id2 FROM v$lock WHERE lmode = 0) AND vh.id1 = vw.id1 AND vh.id2 = vw.id2 AND vh.request = 0 AND vw.lmode = 0 AND vh.sid = vs.sid AND vw.sid = vsw.sid AND vh.sid = jrh.session_id(+) AND vw.sid = jrw.session_id(+); col MODULE for a20 col OSUSER for a10 col USERNAME for a10 set num 10 col MACHINE for a20 set lines 200 col SCHEMANAME for a10 select s.sid,s.serial#,p.spid os_pid,s.status, s.osuser,s.username, s.MACHINE,s. MODULE, s.SCHEMANAME, s.action from gv$session s, gv$process p WHERE s.paddr = p.addr and s.sid = '&or acle_sid'; SELECT TO_CHAR(sysdate, 'DD-MON-YYYY HH24:MI:SS') || ' User ' ||s1.username || '@' || s1.machine || ' ( SID= ' || s1.sid || ' ) with the statement: ' || sqlt2.sql_text ||' is blocking the SQL statement on ' || s2.username || '@' || s2.machine || ' ( SID=' || s2.sid || ' ) blocked SQL -> ' ||sqlt1.sql_text AS blocking_status FROM v$lock l1, v$session s1, v$lock l2 , v$session s2,v$sql sqlt1, v$sql sqlt2 WHERE s1.sid =l1.sid AND s2.sid =l2.sid AND sqlt1.sql_id= s2.sql_id AND sqlt2.sql_id= s1.prev_sql_id

AND l1.BLOCK =1 AND l2.request > 0 AND l1.id1 = l2.id1 AND l2.id2 = l2.id2; Query to check number of user sessions REM start of SQL set feedback on set timing on set echo on set feedback on set pagesize 132 set linesize 80 col user_name format a15 col first_connect format a18 col last_connect format a18 col How_many_user_sessions format 9999999999 col How_many_sessions format 999999 9999 rem Summary of how many users select 'Number of user sessions : ' || count( distinct session_id) How_many_user_sessions from icx_sessions icx where last_connect > sysdate - (4/2 4) and disabled_flag != 'Y' and PSEUDO_FLAG = 'N' / rem sessions per user select user_name, count(*) How_many_sessions from icx_sessions icx, fnd_user u w here icx.user_id = u.user_id and last_connect > sysdate - (4/24) and disabled_flag != 'Y' and PSEUDO_FLAG = 'N' group by user_name order by 2 desc / REM end of SQL

S-ar putea să vă placă și