Oracle空闲探测,Oracle 性能调优学习札记(十七)- 监控和探测锁机制

Oracle 性能调优学习笔记(十七)--- 监控和探测锁机制

监控和探测锁机制

Oracle锁机制特点

自动管理

高级别的数据并发性

DML事物需要行级别的锁

查询不需要锁

排他和共享锁模式

排他锁:修改资源的时候,排他锁释放之前,其他用户不能操作.

共享锁:当多个用户读取数据的时候,数据添加共享锁,防止排它锁的使用.

锁直到提交和回滚之前一致被锁住

主要的两种类型

DML或者数据锁(TM):

表级别的锁(共享锁):SELECT .... FOR UPDATE

行级别的锁(排他锁):INSERT,UPDATE,DELETE

DDL或者字典锁(TX)

相关的视图:

v$session

v$transaction

v$lock:

type:TM,TX,UL

lmode:锁类型.

select sid,type,id1,id2,lmode,request from v$lock;

request:不等于0表示,处于等待状态.

select object_id,object_name,object_type

from dba_objects where object_id=?

select sid,type,trunc(id1/power(2,16)) rbs,

bitand(id1,to_number('ffff','xxxx'))+0 slot,id2 req,request

from v$lock

where sid=?

v$mystat:

lock table table_name in share mode;

SRS模式

lock table table_name in row share mode;

lock table table_name in row exclusive mode;

lock table table_name in exclusive mode;

DDL锁

排他DDL锁:

Drop  table语句

alter table语句

(DDL完成锁释放)

共享DDL锁:

create procedure语句

audit语句

(当DDL 解析完毕,锁释放)

breakable 解析锁:共享内存中已经解析的SQL使用的时候使用.

建议:在开发时候,不要手动改变锁的行为,及时提交事物的信息.

诊断工具

v$lock

v$locked_object

dba_waiters

dba_blockers

kill会话的方式

select sid,serial# from v$session;

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值