oracle执行update时卡死问题的解决办法
2015-07-13 11:10
225 查看
今天进行项目开发时,为了测试项目中SQL执行效果,就用PLSQLDeveloper执行了一下,没有commit就继续敲代码了,之后重新使用PLSQL Developer时,可能是网络原因,PLSQLDeveloper断开了与数据库连接并且卡死,便强制结束了。代码敲完后进行测试,项目执行后没效果,并且无响应,debug后发现jdbc执行SQL时没反应了.
由于在PLSQLDeveloper执行update时没有commit,oracle将该条记录锁住了。
可以通过以下办法解决:
先查询锁定记录
Sql代码
SELECT s.sid, s.serial# FROM v$locked_object lo, dba_objectsao, v$session s WHERE ao.object_id = lo.object_id AND lo.session_id= s.sid;
然后删除锁定记录
Sql代码
ALTER system KILL session 'SID,serial#';
其中 SID填写上文中查到的SID数值,serial#填写serial#列的数值如:
ALTER system KILL session'214,23456';
由于在PLSQLDeveloper执行update时没有commit,oracle将该条记录锁住了。
可以通过以下办法解决:
先查询锁定记录
Sql代码
SELECT s.sid, s.serial# FROM v$locked_object lo, dba_objectsao, v$session s WHERE ao.object_id = lo.object_id AND lo.session_id= s.sid;
然后删除锁定记录
Sql代码
ALTER system KILL session 'SID,serial#';
其中 SID填写上文中查到的SID数值,serial#填写serial#列的数值如:
ALTER system KILL session'214,23456';
相关文章推荐
- ORACLE 常用kill表锁命令
- Oracle行转列、列转行的Sql语句总结
- 用C#将图片保存至Oracle BLOB字段中的方法
- Oracle not in子连接查询不到值的问题(not in 不能查询null数据)
- oracle11g ADR 位置
- Oracle Error 之SP2-0618: Cannot find the Session Identifier. Check PLUSTRACE role is enabled
- Oracle中Rownum的使用技巧与注意事项
- Oracle数据库学习
- oracle创建表空间
- plsql连接不上64位oracle11g的解决办法
- 在ADF应用中,能够通过 oracle.adf.view.rich.security.FRAME_BUSTING 参数来使用framebusting功能。
- 5、VS2010+ASP.NET MVC4+EF4+JqueryEasyUI+Oracle该项目的开发——使用datagrid做报表
- oracle默认管理员的帐号和密码以及密码修改和解除锁定
- [Oracle] - Create DB on Oracle 12c for an Application
- 由于以下错误,Enterprise Manager 配置失败 oracle 11g
- Oracle 11g ORA-12560: TNS: 协议适配器错误!解决方法
- Oracle ->> 查看分区表的每个分区的数据行分布情况
- oracle 创建用户 表导入导出
- oracle_set运营商
- oracle锁表解表