Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

81

积分

0

好友

4

主题
1#
发表于 2012-7-25 16:15:35 | 查看: 5167| 回复: 2
db: 10205
os: sunOS 5.9
症状:
某个会话从6月12号开始一直运行到现在,客户确认可以将其kill,执行alter system kill session后发现
SQL> select status,event from v$session where sid = 137;
STATUS   EVENT
-------- ----------------------------------------------------------------
KILLED   SQL*Net more data from dblink

SQL>  select object_id,locked_mode,session_id from v$locked_object;
OBJECT_ID LOCKED_MODE SESSION_ID
---------- ----------- ----------
       165           3        137
    104489           3        137
       212           3        137

SQL> select TYPE,LMODE,REQUEST,BLOCK from v$lock where sid=137;
TY      LMODE    REQUEST      BLOCK
-- ---------- ---------- ----------
JQ          6          0          0
JI          6          0          0
TM          3          0          0
TM          3          0          0
TM          3          0          0
TX          6          0          0

SQL> select t.status, s.status from v$transaction t, v$session s where s.taddr = t.addr and s.sid=137;
STATUS           STATUS
---------------- --------
ACTIVE           KILLED

何以session已经是killed了但是对应的事务依旧为active且对应的锁不被释放

Maclean生日快乐,帮忙解答一下
谢谢
2#
发表于 2012-7-25 17:56:30
使用alter system disconnect session可以成功的将session 清除
同时因为instance由其他os user启动,当前登录的用户没有权限对其执行kill -9

回复 只看该作者 道具 举报

3#
发表于 2012-7-26 16:34:57
alter system kill session 加 [immediate] 选项

你的事务有可能在wait for rollback

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-11-16 00:38 , Processed in 0.051090 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569