oracle的TM锁、TX锁
来源:互联网 发布:数据建模是什么 编辑:程序博客网 时间:2024/05/01 07:47
Oracle数据库的锁类型
DML锁的目的在于保证并发情况下的数据完整性,在Oracle数据库中,DML锁主要包括TM锁和TX锁,其中TM锁称为表级锁,TX锁称为事务锁或行级锁。
当Oracle数据库发生TX锁等待时,如果不及时处理常常会引起Oracle数据库挂起,或导致死锁的发生,产生ORA-60的错误。这些现象都会对实际应用产生极大的危害,如长时间未响应,大量事务失败等。
DML锁分类表
表1 Oracle的TM锁类型
锁模式
0
1
2
3
4
5
6
1.关于V$lock表和相关视图的说明
Datatype
RAW(4 | 8)
RAW(4 | 8)
NUMBER
VARCHAR2(2)
NUMBER
NUMBER
NUMBER
NUMBER
Lock mode in which the process requests the lock:
--大于0时,表示当前会话被阻塞,其它会话占有改锁的模式
CTIME
NUMBER
Time since current mode was granted
BLOCK
NUMBER
The lock is blocking another lock
0, 'Not Blocking',
1, 'Blocking',
2, 'Global',
--该锁是否阻塞了另外一个锁
2.其它相关视图说明
视图名
描述
主要字段说明
v$session
查询会话的信息和锁的信息。
sid,serial#:表示会话信息。
program:表示会话的应用程序信息。
row_wait_obj#:表示等待的对象,和dba_objects中的object_id相对应。
lockwait :该会话等待的锁的地址,与v$lock的kaddr对应.
v$session_wait
查询等待的会话信息。
sid:表示持有锁的会话信息。
Seconds_in_wait:表示等待持续的时间信息
Event:表示会话等待的事件,锁等于enqueue
dba_locks
对v$lock的格式化视图。
Session_id:和v$lock中的Sid对应。
Lock_type:和v$lock中的type对应。
Lock_ID1: 和v$lock中的ID1对应。
Mode_held,mode_requested:和v$lock中
的lmode,request相对应。
v$locked_object
只包含DML的锁信息,包括回滚段和会话信息。
Xidusn,xidslot,xidsqn:表示回滚段信息。和
v$transaction相关联。
Object_id:表示被锁对象标识。
Session_id:表示持有锁的会话信息。
Locked_mode:表示会话等待的锁模式的信
息,和v$lock中的lmode一致。
select * from v$lock;
select * from v$lock where block=1;
2.查询被锁的对象
select * from v$locked_object;
3.查询阻塞
查被阻塞的会话
select * from v$lock where lmode=0 and type in ('TM','TX');
查阻塞别的会话锁
select * from v$lock where lmode>0 and type in ('TM','TX');
4.查询数据库正在等待锁的进程
select * from v$session where lockwait is not null;
5.查询会话之间锁等待的关系
where a.id1=b.id1 and a.id2=b.id2 and a.block=1 and b.block=0;
select * from v$session_wait where event='enqueue';
7.查找锁住的表和解锁
select
--通过SID,
--alter
http://blog.sina.com.cn/s/blog_95b5eb8c0101i22x.html
- oracle的TM锁、TX锁
- oracle的TM锁、TX锁
- oracle的TM锁、TX锁
- oracle的TM锁、TX锁
- oracle的TM锁、TX锁
- oracle的TM锁、TX锁
- oracle的TM锁、TX锁
- oracle的TM锁、TX锁
- oracle的TM锁、TX锁
- oracle的TM锁、TX锁知识完全普及
- oracle的TM锁、TX锁知识完全普及
- oracle的TM锁、TX锁知识完全普及
- ORACLE的TX锁和TM锁及解锁
- oracle TM锁和TX锁
- TM锁和TX锁的理解
- (基础知识)Oracle事务锁(TX)和表级锁(TM)的理解
- Oracle 之 TX锁
- 利用告警日志分析、解决TM-TX锁
- 《招聘一个靠谱的iOS》|| 文章 || 面试题 || 参考答案
- Android拦截、监听系统返回键事件
- Thrift python常见错误分析
- VM的Ubuntu虚拟机设置以减小内存消耗
- c##region #endregion折叠代码
- oracle的TM锁、TX锁
- 协方差的意义
- Linux常用命令——笔记
- bc 29 GTY's birthday gift(矩阵快速幂)
- rpm安装软件
- 1065:生理周期
- 面试算法题
- Thinking in java 之:容器介绍
- spray-routing中的Exception Handling