Sometimes, “ALTER SYSTEM KILL SESSION” will not terminate a session, it will just mark it as “killed”. In this case you can kill the process or thread of that session at the operation system level.
In Windows
C:\ ORAKILL ORACLE_INSTANCE THREAD;
THREAD means SPID of the process .
We can simply find out THREAD(SPID) By below query.
select spid, osuser, s.program from
v$process p, v$session s where p.addr=s.paddr
Identify SPID of the particular user which you want to Kill
SQL> select spid, osuser, s.program from
v$process p, v$session s where p.addr=s.paddr;
Example
SQL> select spid, osuser, s.program from
v$process p, v$session s where p.addr=s.paddr;
SPID OSUSER PROGRAM
------------------------ ------------------------------ --------------------
8876 NICE JDBC Thin Client
In this above Example THREAD(SPID) is 8876
SQL> Select instance_name from v$instance;
INSTANCE_NAME
-------------
ORCL
C:\ ORAKILL ORCL 8876;
To kill the session on the Unix operatin system, you can use “kill” command:
KILL THREAD
In the above Example
Example : KILL 8876
If after a few minutes the process hasn’t stopped, you can force the session to terminate by using “-9″ parameter:
kill -9 THREAD
Example : KILL -9 8876
Note: Make sure that you are not killing background processes of Oracle such as DBWR, LGWR, SMON, PMON. If you kill one of them, Oracle will crash or become unstable
No comments:
Post a Comment