欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle锁表的原因及解锁方法

程序员文章站 2024-01-18 09:00:34
...

产生的原因最大的可能就是更改数据没有提交事务,数据库就将表锁住!所以在更新时不要用select * from a for update这样的语句很

产生的原因最大的可能就是更改数据没有提交事务,数据库就将表锁住!所以在更新时不要用select * from a for update这样的语句很容易锁表,可能用select *,t.rowid from t 这样的语句代替,,这个也是数据库推荐使用的语句。

解锁的方法:

1、查看锁表进程:

SQL:select * from v$session t1, v$locked_object t2 where t1.sid = t2.SESSION_ID;

2、将锁住的进程杀掉

SQL:alter system kill session SID,serial#;

Oracle锁表的原因及解锁方法