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性能调查>这本书和 ...
随机推荐
- Python 多进程概述
multiprocessing python中的多线程其实并不是真正的多线程,如果想要充分地使用多核CPU的资源,在python中大部分情况需要使用多进程.Python提供了非常好用的多进程包mult ...
- JS实现轻量级计算器
想尝试做一个网页版计算器后,参考了很多博客大神的代码,综合归纳.总结修改,整理如下文. 附: Demo 源码 一.HTML+CSS 具体结构样式如下图,基本参照手机计算器界面.按钮功能可以查 ...
- SqlDataReader生成动态Lambda表达式
上一扁使用动态lambda表达式来将DataTable转换成实体,比直接用反射快了不少.主要是首行转换的时候动态生成了委托. 后面的转换都是直接调用委托,省去了多次用反射带来的性能损失. 今天在对Sq ...
- Spring Boot 整合 Redis 实现缓存操作
摘要: 原创出处 www.bysocket.com 「泥瓦匠BYSocket 」欢迎转载,保留摘要,谢谢! 『 产品没有价值,开发团队再优秀也无济于事 – <启示录> 』 本文提纲 ...
- 【转载】rem自适应布局-移动端自适应必备
原文链接:rem自适应布局-移动端自适应必备 版权所有,转载时请注明出处,违者必究. 由于移动端特殊性,本文讲的是如何使用rem实现自适应,或叫rem响应式布局,通过使用一个脚本就可以rem自适应,不 ...
- 【原创】bootstrap框架的学习 第七课 -[bootstrap表格]
Bootstrap 表格 标签 描述 <table> 为表格添加基础样式. <thead> 表格标题行的容器元素(<tr>),用来标识表格列. <tbody& ...
- iOS模式详解—「runtime面试、工作」看我就 🐒 了 ^_^.
Write in the first[写在最前] 对于从事 iOS 开发人员来说,当提到 ** runtime时,我想都可以说出来 「runtime 运行时」和基本使用的方法.相信很多开发者跟我当初一 ...
- SOA 下实现分布式 调用 cxf+ webService +动态调用
近期项目间隙 自学了 webservice 一下 是我写的 一个demo 首先我们在web.xml 里配置如下 <servlet> <servlet-name>CXFS ...
- selenium + python 登录页面,输入账号、密码,元素定位问题
示例简介: 要求:登录QQ邮箱,输入账号.密码 出现问题:页面中含有iframe框架,因此直接进行元素的查找与操作,出现找不到元素的现象,首先需进行iframe框架的转换,使用switch_to_fr ...
- TPshop中B2C与B2B2C的一点理解
首先来一段百度百科记录一下: B2C 是Business-to-Customer的缩写,而其中文简称为"商对客"."商对客"是电子商务的一种模式,也就是通常说的 ...