Oracle DBA Forum  

Вернуться   Oracle DBA Forum > Работа > Администрирование

Ответ
 
Опции темы Опции просмотра
  #1  
Старый 20.09.2009, 01:26
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,385
По умолчанию Убийство сессии (Kill Session)

1) Выполнить запрос SELECT и посмотреть текущие сессии.


select t.SID, t.SERIAL#, t.osuser as "User", t.MACHINE as "PC", t.PROGRAM as "Program"
from v$session t
--where (NLS_LOWER(t.PROGRAM) = 'cashreg.exe') -- посмотреть сессии от программы cashreg.exe
--where status='ACTIVE' and osuser!='SYSTEM' -- посмотреть пользовательские сессии
--where username = 'схема' -- посмотреть сессии к схеме (пользователь)
order by 4 asc;



2) Заменить 'SID,Serial#' на 'SID,Serial#' полученных из запроса SELECT



ALTER SYSTEM KILL SESSION 'SID,Serial#' IMMEDIATE;



Убиваются не сразу, нужно подождать несколько секунд.
__________________
Чат форума (требуется аккаунт на github или twitter)

Последний раз редактировалось Marley; 02.12.2011 в 09:56.
Ответить с цитированием
  #2  
Старый 23.03.2011, 15:08
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,385
По умолчанию

Убийство всех сессий к схеме



/*
This script terminates all connections to the user schema. Username must be specified in the script before execution.
The sessions may exist in the "KILLED" state while the transactions roll back

*/

define USERNAME = SCOTT

begin
for i in (select SID, SERIAL# from V$SESSION where USERNAME = upper('&&USERNAME')) loop
execute immediate 'alter system kill session '''||i.SID||','||i.SERIAL#||''' immediate';
end loop;
end;
/



__________________
Чат форума (требуется аккаунт на github или twitter)

Последний раз редактировалось Marley; 14.05.2012 в 17:06.
Ответить с цитированием
  #3  
Старый 20.07.2011, 17:15
Marley Marley вне форума
Senior Member
 
Регистрация: 19.09.2009
Сообщений: 7,385
По умолчанию

Найти блокирующую сессию:

SQL> select status, SECONDS_IN_WAIT, BLOCKING_SESSION, SEQ# from v$session where username= upper('scott');

Код:
STATUS   SECONDS_IN_WAIT BLOCKING_SESSION       SEQ#
-------- --------------- ---------------- ----------
ACTIVE                 1                        8275
ACTIVE                 1                        8072
ACTIVE                 4                       43045
__________________
Чат форума (требуется аккаунт на github или twitter)

Последний раз редактировалось Marley; 28.12.2011 в 17:40.
Ответить с цитированием
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 23:36. Часовой пояс GMT +3.


Powered by vBulletin®