`
wang_zhi_peng2007
  • 浏览: 249218 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

oracle中表被锁 解锁

 
阅读更多

Oracle 中表被锁处理:

1. oracle中查看表是否被锁 
查看表是否被锁 
SELECT /*+ rule*/ 
a.sid, b.owner, object_name, object_type 
FROM v$lock a, all_objects b 
WHERE TYPE = 'TM' 
and a.id1 = b.object_id; 
2. 查到的都是被锁的表 ,这样可以把它杀掉 
SELECT sid,serial# FROM v$session WHERE sid = &sid; 
alter system kill session 'sid,serial#'; 
尤其要注意在执行SQL更新或删除操作时,要运行commit。

以上两步,可以通过Oracle的管理控制台来执行。
如果出现题目的错误,可以
select a.spid,b.sid,b.serial#,b.username from v$process a,v$session b where a.addr=b.paddr and b.status='KILLED' ;

3. 如果利用上面的命令杀死一个进程后,进程状态被置为"killed",但是锁定的资源很长时间没有被释放,那么可以在os一级再杀死相应的进程(线程),首先执行下面的语句获得进程(线程)号:
select spid, osuser, s.program from v$session s,v$process p where 
s.paddr=p.addr and s.sid=33 (33就是上面的sid)

4. 在OS上杀死这个进程(线程):
 1)在unix上,用root身份执行命令:
    #kill -9 12345(即第3步查询出的spid)
 2)在windows(unix也适用)用orakill杀死线程,orakill是oracle提供的一个可执行命令,语法为:
    orakill sid thread
  其中:
  sid:表示要杀死的进程属于的实例名
  thread:是要杀掉的线程号,即第3步查询出的spid。
  例:c:>orakill orcl 12345

 

  

 

分享到:
评论

相关推荐

    Oracle的锁表与解锁

    本文将深入探讨Oracle中的锁机制,特别是如何锁表与解锁,以及相关的SQL查询语句,帮助数据库管理员和开发人员更好地理解和管理Oracle数据库的锁状态。 #### 锁的类型 在Oracle中,锁主要分为两种类型: 1. **TX...

    oracle锁表及解锁

    ### Oracle锁表与解锁详解 在Oracle数据库管理中,锁是一种关键机制,用于控制多个用户对数据资源的并发访问,防止数据冲突和不一致。本文将深入探讨Oracle中检查锁表的方法以及如何对表进行解锁。 #### Oracle锁...

    oracle存储过程解锁

    ### 描述:“如果存储过程被锁住,可以使用这个存储过程解锁方法” #### 解析: 当遇到存储过程被锁定的情况时,通常可以通过查询`dba_ddl_locks`视图来查找锁定的详细信息。例如,要检查名为`prc_exec_day`的存储...

    oracle锁表和解锁语句示例.sql

    oracle锁表和解锁语句示例。

    oracle 用户被锁定解锁方法

    oracle 用户被锁定解锁方法

    oracle锁表后,如何解锁

    Oracle锁表是指在Oracle数据库中某个表被锁定,无法进行操作的情况。这种情况经常发生在多用户同时访问同一个表时,某个用户锁定了该表,导致其他用户无法访问该表。那么,在不知道谁锁的情况下,如何去解锁呢? 一...

    ORACLE 如何查询被锁定表及如何解锁释放session

    当发现某个表被锁定且影响了数据库的正常运行时,可能需要解锁相应的会话。这通常发生在调试阶段或处理紧急情况时。 **解锁语法**: ```sql -- 通用格式 ALTER SYSTEM KILL SESSION 'sid,serial#'; -- 示例 ALTER...

    oracle查询锁表和解锁byxiaoheng

    oracle查询锁表和解锁。oracle在操作的过程中经常会遇到锁表的情况,一般能够用kill命令消除。

    oracle 解锁表

    oracle 解锁表,可以用此字句,对表进行解锁,但是要有相应的权限

    oracle数据表解锁

    B.SESSION_ID 锁表SESSION_ID, B.ORACLE_USERNAME 锁表用户名, decode(D.type, 'XR', 'NULL', 'RS', 'SS(Row-S)', 'CF', 'SS(Row-S)', 'TM', 'TABLE LOCK', 'PW', 'TABLE LOCK', 'TO', 'TABLE LOCK',...

    Oracle表死锁与解锁

    Oracle数据库在运行过程中,可能会遇到一种情况,那就是“表死锁”,这会导致多个事务相互等待对方释放资源,从而无法继续执行。死锁不仅影响数据库的正常运行,还可能导致数据一致性问题。本文将深入探讨Oracle表...

    oracle解锁,死锁

    解锁是指解除Oracle数据库中某些表或行上的锁。解锁可以手动进行,也可以通过自动机制实现。以下是一些常用的解锁方法: 1. **使用ALTER SYSTEM KILL SESSION命令**:这是最直接的方法之一,可以直接终止某个会话,...

    Oracle数据库解锁工具

    Oracle数据库解锁工具是一种专门用于解决Oracle数据库账户锁定问题的应用程序,尤其在开发环境中十分有用。在Oracle数据库系统中,为了确保安全性,用户账户可能会因为多次尝试登录失败而被自动锁定。这种情况下,...

    oracle解锁语句.txt

    oracle解锁语句,常用解锁语句,经过测试实用;oracle解锁语句,常用解锁语句,经过测试实用。

    oracle锁库解锁方法

    针对oracle数据库 解锁方法 ,个人使用 希望大家能够有所帮助

    oracle用户解锁三种方法

    **第三种方法:Oracle 10g中解锁新安装的scott用户** 新安装的Oracle 10g默认情况下,`scott`账户可能是锁定的且密码已过期。解锁并更新密码的步骤如下: 1. 打开命令行(DOS窗口),输入`sqlplus`启动SQL*Plus。 ...

    oracle用户解锁

    在Oracle数据库管理中,用户账户的状态管理是一项关键的运维任务,其中包括了用户解锁这一重要的操作。当一个Oracle用户被锁定时,通常是由于密码输入错误次数过多、账户过期或管理员手动锁定等原因。在这种情况下,...

    oracle锁表解决

    ### Oracle锁表解决 在Oracle数据库管理中,锁表是一个常见的问题,特别是在高并发的应用场景下。当一个表被锁定时,其他用户或进程可能无法访问该表,从而导致应用程序出现延迟或者错误。因此,了解如何有效地解锁...

    解锁oracle对象

    解锁oracle对象

Global site tag (gtag.js) - Google Analytics