手机
当前位置:查字典教程网 >编程开发 >Oracle教程 >深入探讨:Oracle中如何查询正锁表的用户以及释放被锁的表的方法
深入探讨:Oracle中如何查询正锁表的用户以及释放被锁的表的方法
摘要:可在PL/SQL中用如下SQL语句来查询当前数据库中哪些表被锁住了,并且是哪些用户来锁的这些表:SELECTA.OWNER,--OBJECT...

可在PL/SQL中用如下SQL语句来查询当前数据库中哪些表被锁住了,并且是哪些用户来锁的这些表:

SELECT

A.OWNER, --OBJECT所属用户

A.OBJECT_NAME, --OBJECT名称(表名)

B.XIDUSN,

B.XIDSLOT,

B.XIDSQN,

B.SESSION_ID, --锁表用户的session

B.ORACLE_USERNAME, --锁表用户的Oracle用户名

B.OS_USER_NAME, --锁表用户的操作系统登陆用户名

B.PROCESS,

B.LOCKED_MODE,

C.MACHINE, --锁表用户的计算机名称(例如:WORKGROUPUserName)

C.STATUS, --锁表状态

C.SERVER,

C.SID,

C.SERIAL#,

C.PROGRAM --锁表用户所用的数据库管理工具(例如:ob9.exe)

FROM

ALL_OBJECTS A,

V$LOCKED_OBJECT B,

SYS.GV_$SESSION C

WHERE

A.OBJECT_ID = B.OBJECT_ID

AND B.PROCESS = C.PROCESS

ORDER BY 1,2 同时可用如下命令来kill掉当前锁表的项:

alter system kill session 'sid, serial#'

--例如:alter system kill session '57, 10325

【深入探讨:Oracle中如何查询正锁表的用户以及释放被锁的表的方法】相关文章:

Oracle对于死锁的处理方法

Oracle 创建用户及数据表的方法

在oracle 数据库查询的select 查询字段中关联其他表的方法

Oracle数据库的启动与关闭方法

oracle中fdisk导致的ASM磁盘数据丢失的解决方法

oracle之查询某个表上的触发器

[Oracle] 如何使用触发器实现IP限制用户登录

深入探讨:oracle中方案的概念以及方案与数据库的关系

oracle中rman备份集加密的方法

oracle下加密存储过程的方法

精品推荐
分类导航