Oracle用户无需提交/回滚即可断开连接,不再可以更改数据库 [英] Oracle user disconnected without committing/rolling back, not longer can change database

查看:130
本文介绍了Oracle用户无需提交/回滚即可断开连接,不再可以更改数据库的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

登录到我正在使用的Oracle数据库的用户没有提交或回滚就注销了,现在我的数据库无法更改,它似乎已被锁定.

A user logged into the Oracle database I'm working with logged out without committing or rolling back and now my database cannot be changed, it seems to be locked.

我尝试了

 rollback

但是没有用.

有什么想法吗? 谢谢.

Any thoughts? Thanks.

推荐答案

无法在不提交或回滚的情况下注销Oracle数据库.客户端应用程序可能崩溃或被强行终止,并且没有机会注销而在服务器上持有一些锁的会话.如果是这样,DBA将需要终止该会话.

It is impossible to log out of an Oracle database without committing or rolling back. It is possible that the client application crashed or was forcibly terminated and did not have a chance to log out leaving a session on the server that is holding some locks. If that is the case, the DBA would need to kill that session.

如果您是DBA,但不确定要杀死哪个会话,则可以运行以下查询来获取有关持有锁定其他会话的锁的各个会话的信息.

If you are the DBA and you're not sure what session needs to be killed, you can run the following query to get information about the various sessions that are holding locks that are blocking other sessions

SELECT ses.sid, ses.serial#, ses.username, ses.program, ses.osuser, ses.machine
  FROM v$session ses,
       dba_blockers blk
 WHERE blk.holding_session = ses.sid

一旦您确定要杀死哪个会话

Once you've identified which session(s) to kill

ALTER SYSTEM KILL SESSION '<<sid>>, <<serial#>>'

这篇关于Oracle用户无需提交/回滚即可断开连接,不再可以更改数据库的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆