Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Зависает alter table / 6 сообщений из 6, страница 1 из 1
24.11.2017, 16:47
    #39559149
Pastic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зависает alter table
Код: plsql
1.
2.
3.
4.
5.
select s.INST_ID, s.SID, s.SERIAL#, s.USERNAME, s.STATUS, s.MACHINE, l.TYPE,
  'Alter system kill session '''||s.SID||','||s.SERIAL#||''';' x
from gv$lock l, gv$session s, dba_objects o
where l.INST_ID=s.INST_ID and l.SID=s.SID
  and l.id1=o.object_id and o.object_name = Upper('AIRCRAFT_TYPE_RAIDS2')



Этот запрос выдаёт строчку с Alter system kill session '2151,16087';, но при выполнении этого самого Alter system kill session '2151,16087'; выдаётся сообщение об ошибке "ORA-00030: User session ID does not exist".

Как можно решить эту проблему?
...
Рейтинг: 0 / 0
24.11.2017, 16:57
    #39559153
Pastic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зависает alter table
select * from AIRCRAFT_TYPE_RAIDS2 for update nowait отрабатывает без ошибок.
...
Рейтинг: 0 / 0
24.11.2017, 16:58
    #39559155
,@inst_id
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зависает alter table
Pastic[src PLSQL]Этот запрос выдаёт строчку ...
Как можно решить эту проблему?убрать Г из запроса?
...
Рейтинг: 0 / 0
24.11.2017, 16:59
    #39559157
dmdmdm
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зависает alter table
Возможно, сессия кратковременная.
Попробуйте сразу убивать.
Из моих закромов:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
declare
  cursor c1 is 
  select distinct s.sid, s.serial#, s.STATUS, s.USERNAME, s.machine, s.PROGRAM, s.module, s.logon_time--, q.*
  from v$session s, v$sqltext q --,v$access
  where --a.object='LOAD_OSA_FILES'
  s.USERNAME not in ('SYSTEM', 'SYS')
  --and s.MACHINE = 'MS-D11107-12'
  --and q.SQL_TEXT like 'insert into GW_T_%'
  --and s.STATUS = 'ACTIVE'
  --and s.PROGRAM = 'JDBC Thin Client'
  --and a.sid=s.sid
  and q.address (+) = s.sql_address;
--  order by s.sid;
  
  q varchar2(1000);

begin
  for c in c1 loop
    begin
      q := 'ALTER SYSTEM DISCONNECT SESSION '''||c.sid||','||c.serial#||''' IMMEDIATE';
      dbms_output.put_line(q);
      execute immediate(q);
    exception when others then
      if sqlcode = -31 then
        q := sqlerrm;
        dbms_output.put_line(q);
      else
        raise;
      end if;
    end;
  end loop;
end;

...
Рейтинг: 0 / 0
24.11.2017, 16:59
    #39559158
andrey_anonymous
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зависает alter table
GV$ - просто так или потому что RAC?
Если второе - то надо учитывать instance
...
Рейтинг: 0 / 0
24.11.2017, 17:03
    #39559162
Pastic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Зависает alter table
В общем, завершилось через 36 минут. Так и не понял, что это было.
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Зависает alter table / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]