Lock(一)认识v$LOCK

v$lock列出了数据库当前拥有的锁及未完成的锁请求。

ColumnDescription
ADDR被锁对象的地址
KADDR锁的地址
SIDsession id(这里特指正在锁定对象或请求去锁定对象的session id)
TYPE使用的锁的类型,主要包含两大类,用户类型的锁及系统类型的锁
(1)用户类型的锁由用户的应用程序获得,任何阻塞其他进程的进程都可能持有这些锁,用户类型的锁有:
    --TM:DML enqueue
    --TX:Transaction enqueue
    --UL:用户提供的锁
(2)系统类型的锁见”table1. system type locks“,这里只介绍常用的系统锁,如何要查看所有的锁,可以查看v$lock_type。
ID1/ID2取值根据所的类型的不同也有所不同
(1)对于TM锁,ID1表示被锁定的object_id,可以和dba_object连接获得锁定的对象,ID2为0;
(2)对于TX锁,这两个字段构成了事物在回滚段中的位置。
LMODEsession保持的锁的模式
--0:none
--1:null(NULL)
--2:row-S(SS,行级共享锁,其它session只能查询这些数据行。SQL操作有select for update、lock for update、lock row share)
--3:row-X(SX,行级排它锁,在提交前不允许做DML操作。SQL操作有insert、update、delete、lock row share)
--4:share(S,共享锁。SQL操作有create index,lock share)
--5:S/Row-X(SSX,共享行级排它锁。SQL操作有lock share row exclusive)
--6:exclusive(X,排它锁。SQL操作有alter table、drop table、drop index、truncate table、lock exclusive等DDL操作)
REQUEST进程请求的锁的模式
--0:none
--1:null(NULL)
--2:row-S(SS)
--3:row-X(SX)
--4:share(S)
--5:S/Row-X(SSX)
--6:exclusive(X)
CTIME

自当前模式被授予的时间

BLOCK指定该所是否阻塞其它进程,可能的取值有
--0:该锁未阻塞其他进程
--1:该锁正在阻塞其它进程
--2:该锁没有阻塞本地节点的任何进程,但是他可能会阻塞远程节点上的进程。此值仅用于Oracle RAC配置,不配置在但节点数据库中

 

Table 8-1 Values for the TYPE Column: System Types

System TypeDescriptionSystem TypeDescription

AE

Edition enqueue

MR

Media recovery

AT

Lock held for the ALTER TABLE statement

NA..NZ

Library cache pin instance (A..Z = namespace)

BL

Buffer hash table instance

PF

Password File

CF

Control file schema global enqueue

PI, PS

Parallel operation

CI

Cross-instance function invocation instance

PR

Process startup

CU

Cursor bind

QA..QZ

Row cache instance (A..Z = cache)

DF

datafile instance

RT

Redo thread global enqueue

DL

Direct loader parallel index create

SC

System change number instance

DM

Mount/startup db primary/secondary instance

SM

SMON

DR

Distributed recovery process

SN

Sequence number instance

DX

Distributed transaction entry

SQ

Sequence number enqueue

FS

File set

SS

Sort segment

HW

Space management operations on a specific segment

ST

Space transaction enqueue

IN

Instance number

SV

Sequence number value

IR

Instance recovery serialization global enqueue

TA

Generic enqueue

IS

Instance state

TS

Temporary segment enqueue (ID2=0)

IV

Library cache invalidation instance

TS

New block allocation enqueue (ID2=1)

JQ

Job queue

TT

Temporary table enqueue

KK

Thread kick

UN

User name

LA .. LP

Library cache lock instance lock (A..P = namespace)

US

Undo segment DDL

MM

Mount definition global enqueue

WL

Being-written redo log instance

转载于:https://www.cnblogs.com/lijiaman/p/6886422.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值