Oracle
 sql >> Base de données >  >> RDS >> Oracle

Comment tuer toutes les sessions oracle actives et inactives pour l'utilisateur

La KILL SESSION la commande ne tue pas la session. Il demande simplement à la session de se tuer. Dans certaines situations, comme l'attente d'une réponse d'une base de données distante ou l'annulation de transactions, la session ne s'arrêtera pas immédiatement et attendra la fin de l'opération en cours. Dans ces cas, la session aura le statut "marqué pour tuer ". Il sera ensuite tué dès que possible.

Vérifiez l'état pour confirmer :

SELECT sid, serial#, status, username FROM v$session;

Vous pouvez également utiliser IMMÉDIAT clause :

ALTER SYSTEM KILL SESSION 'sid,serial#' IMMEDIATE;

Le IMMEDIATE La clause n'affecte pas le travail effectué par la commande, mais elle rend immédiatement le contrôle à la session en cours, plutôt que d'attendre la confirmation de la suppression. Jetez un œil à Killing Oracle Sessions.

Mettre à jour Si vous voulez tuer toutes les sessions, vous pouvez simplement préparer un petit script.

SELECT 'ALTER SYSTEM KILL SESSION '''||sid||','||serial#||''' IMMEDIATE;' FROM v$session;

Bobine ci-dessus en un .sql fichier et exécutez-le, ou copiez-collez la sortie et exécutez-la.