解决锁表问题
来源:互联网 发布:淘宝免费引流 编辑:程序博客网 时间:2024/05/19 02:43
由于多次使用for uptate使得数据库表被锁,解决方法如下:
---锁表查询的代码有以下形式
select count(*) from v$locked_object;
select * from v$locked_object;
--查看哪个表被锁
select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id=a.OBJECT_ID;
--查看是哪个session引起的
select b.username,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id=b.sid order by b.logon_time;
--查看是哪个sql引起的
select b.username,b.sid,b.serial#,c.* from v$locked_object a,v$session b,v$sql c where a.session_id=b_sid
and b.SQL_ID=c.SQL_ID and c.SQL_ID='' order by b.logon.time;
--杀掉对应的进程
alter system kill session '389,5145';
alter system kill session '772,1385';
alter system kill session '589,1419';
alter system kill session '589,1419';
alter system kill session '1352,3435';
alter system kill session '1352,3435';
alter system kill session '1163,859';
alter system kill session '1163,859';
为了避免表再次被锁,通常尽量少的使用for update。可以使用select t.rowid,t.* from hgjksdr t ;
---锁表查询的代码有以下形式
select count(*) from v$locked_object;
select * from v$locked_object;
--查看哪个表被锁
select b.owner,b.object_name,a.session_id,a.locked_mode from v$locked_object a,dba_objects b where b.object_id=a.OBJECT_ID;
--查看是哪个session引起的
select b.username,b.sid,b.serial#,logon_time from v$locked_object a,v$session b where a.session_id=b.sid order by b.logon_time;
--查看是哪个sql引起的
select b.username,b.sid,b.serial#,c.* from v$locked_object a,v$session b,v$sql c where a.session_id=b_sid
and b.SQL_ID=c.SQL_ID and c.SQL_ID='' order by b.logon.time;
--杀掉对应的进程
alter system kill session '389,5145';
alter system kill session '772,1385';
alter system kill session '589,1419';
alter system kill session '589,1419';
alter system kill session '1352,3435';
alter system kill session '1352,3435';
alter system kill session '1163,859';
alter system kill session '1163,859';
为了避免表再次被锁,通常尽量少的使用for update。可以使用select t.rowid,t.* from hgjksdr t ;
0 0
- 解决锁表问题
- 解决ORACLE锁表问题
- ORACLE解决锁表问题
- Oracle 解决锁表问题
- oracle 解决锁表问题
- Oracle解决锁表问题
- 解决ora-00054 Oracle锁表问题
- oracle 锁问题的解决
- oracle 锁问题的解决
- oracle 锁问题的解决
- oracle 锁问题的解决
- Zookeeper解决分布式锁问题
- 解决oracle锁的问题
- 用链表类解决链表问题
- sqlserver 查看表锁和解决表锁问题
- 如何查询及解决锁表进程问题
- oracle杀掉进程,解决锁表等问题。
- 问题 解决
- PHP--面向对象
- NHibernate使用入门(四)
- 新人报到
- UsernamePasswordAuthenticationFilter 登录认证
- SublimeText3常用快捷操作
- 解决锁表问题
- 新人报到
- 大型网站架构之分布式消息队列
- 修改文件输出目录后,提示配置错误(VS2010)
- Oracle11g for linux
- 新人报到
- iOS--js和oc交互
- 新人报到
- 项目受源代码管理。向源代码管理注册此项目时出错。建议不要对此项目进行任何更改