Citat:
owner: Zna li neko sql,plsql ili u kojem se paketu nalazi naredba s kojom mogu prekinuti sve session_e,odnosno prikacene usere.
Tako nesto za sada jos ne postoji. Mozes da uradis sledece:
Code:
PLS@Raspucin>select sid, serial#, username, username from v$session;
SID SERIAL# USERNAME USERNAME
---------- ---------- ------------------------------ ------------------------------
1 1
2 1
3 1
4 3
5 1
6 1
7 38761
8 38757
9 38757
10 38757
11 15885 LJILJA LJILJA
12 44777 LJILJA LJILJA
14 4982 LJILJA LJILJA
15 50326 LJILJA LJILJA
17 54787 LJILJA LJILJA
15 rows selected.
sesije ubijas na ovaj nacin:
ALTER SYSTEM KILL SESSION 'SID,SERIAL#';
E dalje se sam snadji, napisi neku PL/SQL proceduru, koja ce dinamicki da izvrsava ovu naredbu, samo pazi koje procese ubijas. Procesi bez username-a su sistemski, pa lako mozes i bazu da ubijes.... Jer sam Bog zna kako ce baza da se ponasa kada je osakatis tako sto joj ubijes sesije nekim nasumicnim redosledom.
Code:
begin
for i in (select sid,serial# from v$session where username is not null) loop
execute immediate 'alter system kill session ' ||''''|| i.sid ||','|| i.serial# ||''' immediate';
end loop;
end;
Obicno se praktikuje da se korisnicima cija aplikacija koristi bazu urade nesto pa im se onda saopsti da im je sesija ubijena nego da se radi ovako. Kada korisnici dobiju poruku
ORA-00028: your session has been killed
to obicno vide kao bug....
[Ovu poruku je menjao Raspucin dana 04.10.2005. u 19:01 GMT+1]
[Ovu poruku je menjao Raspucin dana 04.10.2005. u 19:02 GMT+1]