
时间:2015-06-28 00:00 来源:IT猫扑网|http://www.itmop.com/ 作者:网管联盟 我要评论(0)
我们这里将介绍Oracle如何解锁,在被锁之后我们也可以利用一些工具来进行解锁。下面大家就一同来了解Oracle如何解锁吧。
我们在操作数据库的时候,有时候会由于操作不当引起数据库表被锁定,这么我们经常不知道Oracle如何解锁,不知怎么给这些表解锁,在pl/sql Developer工具的的菜单&tools&里面的&sessions&可以查询现在存在的会话,但是我们很难找到那个会话被锁定了,想找到所以被锁的会话就更难了,下面这叫查询语句可以查询出所以被锁的会话。如下:
1.SELECT sn.username, m.SID,sn.SERIAL#, m.TYPE,
2. DECODE (m.lmode,
3. 0, 'None',
4. 1, 'Null',
5. 2, 'Row Share',
6. 3, 'Row Excl.',
7. 4, 'Share',
8. 5, 'S/Row Excl.',
9. 6, 'Exclusive',
10. lmode, LTRIM (TO_CHAR (lmode, '990'))
11. ) lmode,
12. DECODE (m.request,
13. 0, 'None',
14. 1, 'Null',
15. 2, 'Row Share',
16. 3, 'Row Excl.',
17. 4, 'Share',
18. 5, 'S/Row Excl.',
19. 6, 'Exclusive',
20. request, LTRIM (TO_CHAR (m.request, '990'))
21. ) request,
22. m.id1, m.id2
23. FROM v$session sn, v$lock m
24. WHERE (sn.SID = m.SID AND m.request != 0) --存在锁请求,即被阻塞
25. OR ( sn.SID = m.SID --不存在锁请求,但是锁定的对象被其他会话请求锁定
26. AND m.request = 0
27. AND lmode != 4
28. AND (id1, id2) IN (
29. SELECT s.id1, s.id2
30. FROM v$lock s
31. WHERE request != 0 AND s.id1 = m.id1
32. AND s.id2 = m.id2)
33. )
34.ORDER BY id1, id2, m.request;
通过以上查询知道了sid和 SERIAL#就可以用了
1.alter system kill session 'sid,SERIAL#';
关键词标签:Oracle解锁
相关阅读 误删Oracle数据库实例的控制文件 为UNIX服务器设置Oracle全文检索 Oracle数据库如何查找删除重复的SQL语句 Oracle导入导出数据库的语法 oracle数据库安装预环境一键处理脚本 oracle常用DBA命令
热门文章
利用Oracle分区表来减少磁盘I/O冲突
Oracle数据库优化之数据库磁盘I/O
讲解Oracle复制技术的分布式系统同步应用
刷新Oracle缓存
oracle 8080与TOMCAT默认端口冲突
DATAGUARD的日志应用服务
人气排行 oracle中使用SQL语句修改字段类型-oracle修改SQL语句案例 Oracle中使用alter table来增加,删除,修改列的语法 ORACLE SQL 判断字符串是否为数字的语句 ORACLE和SQL语法区别归纳(1) oracle grant 授权语句 ORACLE修改IP地址后如何能够使用 如何加速Oracle大批量数据处理 Oracle删除表的几种方法 Oracle 10g创建表空间和用户并指定权限 Oracle连接数太多报错-ORA-12516错误 Oracle字符串截取 连接Oracle数据库的Hibernate配置文件
查看所有0条评论>>