Sess users active

De wiki.nexiat.fr
Aller à la navigation Aller à la recherche
Fiche express
Type Script SQL*Plus de diagnostic
Voir aussi Sess users 8i · Sess users active 8i · Sess users active sql · Sess users by CPU

Sess users active liste uniquement les sessions actuellement actives (en train d'exécuter du SQL), toutes instances d'un cluster confondues (gv$*), en syntaxe ANSI moderne (INNER JOIN).

Complète Sess users 8i (toutes les sessions, actives ou non) et se décline en Sess users active 8i (même résultat, syntaxe de jointure historique) et Sess users active sql (mêmes sessions actives, avec en plus le texte SQL en cours d'exécution). Pour trier ces mêmes sessions par ressource consommée plutôt que simplement les lister, voir la famille Sess users by CPU.

Script

SET LINESIZE 180
SET PAGESIZE 50000
SET FEEDBACK 6
SET VERIFY OFF

COLUMN instance_name     FORMAT a8         HEADING 'Instance'
COLUMN sid                FORMAT 999999     HEADING 'SID'
COLUMN serial_id          FORMAT 99999999   HEADING 'Serial ID'
COLUMN session_status     FORMAT a9         HEADING 'Statut'
COLUMN oracle_username    FORMAT a18        HEADING 'Utilisateur Oracle'
COLUMN os_username        FORMAT a18        HEADING 'Utilisateur OS'
COLUMN os_pid             FORMAT a8         HEADING 'PID OS'
COLUMN session_terminal   FORMAT a10 TRUNC  HEADING 'Terminal'
COLUMN session_machine    FORMAT a30 TRUNC  HEADING 'Machine'
COLUMN session_program    FORMAT a40 TRUNC  HEADING 'Programme'

BREAK ON instance_name SKIP PAGE

SELECT
    i.instance_name     instance_name
  , s.sid               sid
  , s.serial#           serial_id
  , s.status            session_status
  , s.username          oracle_username
  , s.osuser            os_username
  , p.spid              os_pid
  , s.terminal          session_terminal
  , s.machine           session_machine
  , s.program           session_program
FROM
             gv$session  s
  INNER JOIN gv$process  p ON (s.paddr = p.addr AND s.inst_id = p.inst_id)
  INNER JOIN gv$instance i ON (p.inst_id = i.inst_id)
WHERE
      s.status = 'ACTIVE'
  AND s.username IS NOT NULL
ORDER BY
    i.instance_name
  , s.sid;

Voir aussi