denrepo

OracleSessions

Active user sessions

User sessions doing work right now on every instance: who, from which OS user and machine, the module, what they're waiting on, the SQL_ID, when they logged on and how long they've been in the current call (HH:MM:SS). Your own session is left out.

All RAC instances

Not yet verified. How scripts are tested

b-ora-active.sql
1CLEAR COLUMNS2SET LINESIZE 250 PAGESIZE 100 TRIMOUT ON TAB OFF3COLUMN inst       HEADING "INST" FORMAT 9904COLUMN sid_serial HEADING "SID,SERIAL#" FORMAT A145COLUMN username   FORMAT A206COLUMN osuser     FORMAT A15 TRUNCATE7COLUMN machine    FORMAT A25 TRUNCATE8COLUMN module     FORMAT A25 TRUNCATE9COLUMN event      FORMAT A30 TRUNCATE10COLUMN sql_id     FORMAT A1311COLUMN logged_on  HEADING "LOGGED ON" FORMAT A1712COLUMN in_state   HEADING "IN STATE" FORMAT A1013 14SELECT s.inst_id AS inst,15       s.sid || ',' || s.serial# AS sid_serial,16       s.username, s.osuser, s.machine, s.module, s.event, s.sql_id,17       TO_CHAR(s.logon_time, 'YYYY-MM-DD HH24:MI') AS logged_on,18       TO_CHAR(TRUNC(s.last_call_et / 3600), 'FM9900') || ':' ||19       TO_CHAR(TRUNC(MOD(s.last_call_et, 3600) / 60), 'FM00') || ':' ||20       TO_CHAR(MOD(s.last_call_et, 60), 'FM00') AS in_state21FROM gv$session s22WHERE s.type = 'USER'23  AND s.status = 'ACTIVE'24  AND NOT (s.inst_id = TO_NUMBER(SYS_CONTEXT('USERENV', 'INSTANCE'))25           AND s.sid = TO_NUMBER(SYS_CONTEXT('USERENV', 'SID')))26ORDER BY s.last_call_et DESC;

Save it as b-ora-active.sql and run it with SQL> @b-ora-active.

Open in denrepo

Part of these runbooks

More Oracle scripts: Sessions