Lock(一)认识v$LOCK
v$lock列出了数据库当前拥有的锁及未完成的锁请求。
Column | Description |
ADDR | 被锁对象的地址 |
KADDR | 锁的地址 |
SID | session id(这里特指正在锁定对象或请求去锁定对象的session id) |
TYPE | 使用的锁的类型,主要包含两大类,用户类型的锁及系统类型的锁 (1)用户类型的锁由用户的应用程序获得,任何阻塞其他进程的进程都可能持有这些锁,用户类型的锁有: --TM:表锁或DML锁 --TX:行锁或事物锁 --UL:用户提供的锁 (2)系统类型的锁见”table1. system type locks“,这里只介绍常用的系统锁,如何要查看所有的锁,可以查看v$lock_type。 |
ID1/ID2 | 取值根据所的类型的不同也有所不同 (1)对于TM锁,ID1表示被锁定的object_id,可以和dba_object连接获得锁定的对象,ID2为0; (2)对于TX锁,这两个字段构成了事物在回滚段中的位置。 |
LMODE | session保持的锁的模式 --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 Type | Description | System Type | Description |
---|---|---|---|
|
Edition enqueue |
MR |
Media recovery |
|
Lock held for the |
NA..NZ |
Library cache pin instance ( |
|
Buffer hash table instance |
|
Password File |
|
Control file schema global enqueue |
|
Parallel operation |
|
Cross-instance function invocation instance |
|
Process startup |
|
Cursor bind |
|
Row cache instance ( |
|
datafile instance |
|
Redo thread global enqueue |
|
Direct loader parallel index create |
|
System change number instance |
|
Mount/startup db primary/secondary instance |
|
SMON |
|
Distributed recovery process |
|
Sequence number instance |
|
Distributed transaction entry |
|
Sequence number enqueue |
|
File set |
|
Sort segment |
|
Space management operations on a specific segment |
|
Space transaction enqueue |
|
Instance number |
|
Sequence number value |
|
Instance recovery serialization global enqueue |
|
Generic enqueue |
|
Instance state |
|
Temporary segment enqueue (ID2=0) |
|
Library cache invalidation instance |
|
New block allocation enqueue (ID2=1) |
|
Job queue |
|
Temporary table enqueue |
|
Thread kick |
|
User name |
|
Library cache lock instance lock (A..P = namespace) |
|
Undo segment DDL |
|
Mount definition global enqueue |
|
Being-written redo log instance |
Lock(一)认识v$LOCK的更多相关文章
- ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock
ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock 通过终端安装程序sudo apt-get install xxx时出错:E: Could not ...
- ubuntu常见错误--could not get lock /var/lib/dpkg/lock -open
最近研究ubuntu,用apt-get命令安装一些软件包时,总报错:E:could not get lock /var/lib/dpkg/lock -open等 出现这个问题的原因可能是有另外一个程序 ...
- 【ubuntu 】常见错误--Could not get lock /var/lib/dpkg/lock
ubuntu 常见错误--Could not get lock /var/lib/dpkg/lock 通过终端安装程序sudo apt-get install xxx时出错: E: Could not ...
- apt-get报错could not get lock /var/lib/dpkg/lock -open等
用apt-get命令安装一些软件包时,总报错:E:could not get lock /var/lib/dpkg/lock -open等 出现这个问题的原因可能是有另外一个程序正在运行,导致资源被锁 ...
- ubuntu常见错误--Could not get lock /var/lib/dpkg/lock解
通过终端安装程序sudo apt-get install xxx时出错: E: Could not get lock /var/lib/dpkg/lock - open (11: Reso ...
- 14.4.9 Configuring Spin Lock Polling 配置Spin lock 轮询:
14.4.9 Configuring Spin Lock Polling 配置Spin lock 轮询: 很多InnoDB mutexes 和rw-locks 是保留一小段时间,在一个多核系统, 它可 ...
- ubuntu常见错误--Could not get lock /var/lib/dpkg/lock解决
通过终端安装程序sudo apt-get install xxx时出错: E: Could not get lock /var/lib/dpkg/lock - open (11: Resource t ...
- ubuntu 16.04常见错误--Could not get lock /var/lib/dpkg/lock解决
我的博客 ubuntu常见错误--Could not get lock /var/lib/dpkg/lock解决 通过终端安装程序sudo apt-get install xxx时出错: E: Cou ...
- BUG in Ubuntu--Could not get lock /var/lib/dpkg/lock
在ubuntu中通过apt安装软件时,报错: E: Could not : Resource temporarily unavailable) E: Unable to lock the admini ...
- 关于library cache lock和row cache lock产生的常见原因
这两个等待事件其实很少出现在top5列表中,一般都没什么印象,在此整理记录以便以后查阅. 常见的library cache lock产生的原因在<高级OWI与Oracle性能调查>这本书和 ...
随机推荐
- 使用spring利用HandlerExceptionResolver实现全局异常捕获
最近一直没有时间更新是因为一直在更新自己使用的框架. 之后会慢慢带来对之前使用的spring+mvc+mybatis的优化. 会使用一些新的特性,实现一些新的功能. 我会尽量分离业务,封装好再拿出来. ...
- 【Scala】Scala之Traits
一.前言 前面学习了Scala中包和导入的相关知识点,接着学习Traits(特质) 二.Traits Scala的特质与Java的接口基本相同,当遇到可以使用Java接口的情形,就可以考虑使用特质,S ...
- ios 网络/本地播放器
推荐播放器: LRLAVPlayer相对易懂好修改,调整添加内容. https://github.com/codeWorm2015/videoPlayer NSString*path=[[NSBund ...
- Linux嵌入式开发中常用的两个工具
TFTP 全称:Trivial File Transfer Protocol(简单文件传输协议) 进行小文件传输 在ubuntu下设置TFTP服务器 $ sudo apt-get install tf ...
- JAVA----类的继承1(extends)
要学习类的继承,首先应当理解继承的含义: 来自新华词典的释义: ①依法承受(死者的遗产等):-权ㄧ-人. ②泛指把前人的作风.文化.知识等接受过来:-优良传统ㄧ-文化遗产. ③后人继续做前人遗留下来的 ...
- MongoDB系列:把mongodb作为windows的服务来启动
1.首先切换到mongodb安装目录下的bin目录,在控制台直接运行以下命令 "C:\Program Files\MongoDB\Server\3.0\bin\mongod.exe" ...
- git-ftp 用git管理ftp空间
ftp管理不能实现版本控制,而且多电脑工作时,同步很成问题. git-ftp可以完美的解决问题 下面是我的趟坑之路,本机的环境是win10,首先你的机器得装有git. git-ftp的地址https: ...
- node-ejs-mongodb结合的项目案例-----引用mongoose和未引用mongoose模块
本项目个人尝试了2种方法,一个是直接用mongod,一个是引用mongod里的mongoose. nodejs-ejs-mogondb- nodej+ejs模板,通过mogondb数据查询数据实现简单 ...
- YARN资源调度策略之Capacity Scheduler
背景 yarn默认使用的是最简单的FIFO调度器,即一个default队列,所有用户共享,分配资源也是先到先得,没有优先级之分.有时一两个任务就把资源全占了,其他任务吃不到资源造成饥饿,显然这样的资源 ...
- WPF 杂谈——资源文件
编写一个应用难免要用到WPF本身的控件.不管是WinForm还是网页都会有自己的控件.只是在写法和用法上有所不同而以.而控件命名却离不开那几个单词.所以不用担心判断不出来哪个是按扭,哪个是文本框.举个 ...