您当前位置:主页 > 资讯攻略 >
来源:未知
2021-02-18 23:05:34 浏览: 分类:资讯攻略

oracle锁表与解表

并且s.username不为空

- kill session语句

更改系统终止会话“50,492”;

-以下是相关表格。

SELECT * FROM v $ lock

SELECT * FROM v$sqlarea;

SELECT * FROM v $ session

SELECT * FROM v $ process

SELECT * FROM v $ locked _ object

SELECT * FROM all _ objects

SELECT * FROM v $ session _ wait

-1.找出锁定对象的会话信息和锁定对象的名称。

SELECT l.session_id sid,s.serial#,l.locked_mode,l.oracle_username,

操作系统用户名,机器,终端,对象名,登录时间

从v $锁定对象l,所有对象o,v $会话s

其中l.object_id = o.object_id

并且l.session_id = s.sid

按sid、s序列号排序;

-2.找出锁定表会话的SID、序列号、操作系统用户名、机器名、终端和执行的语句。

-比上述段落更多的sql_text和action

SELECT l.session_id sid,s.serial#,l.locked_mode,l.oracle_username,s.user#,

l.os _用户名,s .计算机,s .终端,a.sql_text,a .操作

从v$sqlarea a,v $会话s,v $锁定对象l

其中l.session_id = s.sid

并且s.prev_sql_addr = a.address

按sid、s序列号排序;

-3.找出锁表的SID、序列号、操作系统用户名、机器名、终端、类型、模式模式。

SELECT s.sid,s.serial#,s.username,s.schemaname,s.osuser,s.process,s.machine,

s终端,s登录时间,l类型

从v $会话s,v $锁l

其中s.sid = l.sid

并且s.username不为空

按sid排序;

该语句将在数据库中查找由DML语句生成的所有锁,您还可以查找,

任何DML语句实际上都生成两个锁,一个是表锁,另一个是行锁。

锁杀令

更改系统终止会话' sid,序列号'

SELECT /*+ rule */ s.username

decode(l.type,' TM ','表锁',

TX ','行锁定',

NULL) LOCK_LEVEL,

o .所有者,o .对象名称,o .对象类型,

s.sid、s序列号、s终端、s机器、s程序、s用户

从v$session s,v$lock l,dba_objects o

其中l.sid = s.sid

而l.id1 = o.object_id(+)

并且s.username不为空

如果有锁等待,我们可能想知道是谁锁定了手表并导致了等待。

下面的语句可以找出谁锁定了表,谁在等待。

上面的查询结果是一个树形结构。如果有子节点,说明有等待。

如果想知道锁使用了哪个回滚段,还可以将其与V$rollname关联起来,其中xidusn是回滚段的usn。

列用户名格式a10

列所有者格式a10

列对象名称格式a10

列对象类型格式a10

SELECT /*+ rule */ lpad(' ',decode(l.xidusn,0,3,0))||l.oracle_username用户名,

对象所有者,对象名称,对象类型,序列号

从v $锁定对象l,dba _对象o,v $会话s

其中l.object_id=o.object_id

并且l.session_id=s.sid

按o.object_id,xidusn DESC排序

关键词:oracle,锁定表,解锁表

优侠库网站每天提供最新最热门的安卓手机软件、游戏下载、分享热门手游资讯攻略教程、手机软件教程步骤,专注安卓手机游戏软件下载。

本文链接:http://www.123down.cn/gonglue/227423.html

攻略资讯
安卓软件