194 votes

Comment lister les connexions actives / ouvertes dans Oracle ?

Existe-t-il un tableau caché, une variable système ou autre chose pour montrer les connexions actives à un moment donné ?

209voto

PaulJWilliams Points 11641

Utilisez le V$SESSION vue.

V$SESSION affiche les informations de session pour chaque session en cours.

7 votes

Erreur commençant à la ligne 1 de la commande : select * from FROM v$session Erreur à la ligne de commande:1 Colonne:14 Rapport d'erreur : Erreur SQL : ORA-00903 : nom de table invalide 00903. 00000 - "nom de table non valide" *Cause : *Action :

3 votes

Soit vous n'avez pas les permissions, soit vous n'avez pas installé correctement les vues DBA.

4 votes

Vous aurez besoin du rôle select_catalog_role.

128voto

ehrhardt Points 511

Pour une réponse plus complète, voir : http://dbaforums.org/oracle/index.php?showtopic=16834

select
       substr(a.spid,1,9) pid,
       substr(b.sid,1,5) sid,
       substr(b.serial#,1,5) ser#,
       substr(b.machine,1,6) box,
       substr(b.username,1,10) username,
--       b.server,
       substr(b.osuser,1,8) os_user,
       substr(b.program,1,30) program
from v$session b, v$process a
where
b.paddr = a.addr
and type='USER'
order by spid;

35voto

user2021477 Points 101

Lorsque je souhaite afficher les connexions entrantes de nos serveurs d'application vers la base de données, j'utilise la commande suivante :

SELECT username FROM v$session 
WHERE username IS NOT NULL 
ORDER BY username ASC;

Simple, mais efficace.

8voto

Alan Points 61
select s.sid as "Sid", s.serial# as "Serial#", nvl(s.username, ' ') as "Username", s.machine as "Machine", s.schemaname as "Schema name", s.logon_time as "Login time", s.program as "Program", s.osuser as "Os user", s.status as "Status", nvl(s.process, ' ') as "OS Process id"
from v$session s
where nvl(s.username, 'a') not like 'a' and status like 'ACTIVE'
order by 1,2

Cette requête tente de filtrer tous les processus d'arrière-plan.

7voto

Juber Points 51
Select count(1) From V$session
where status='ACTIVE'
/

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X