社区
Oracle
帖子详情
锁和事务
xuzhenghang
2010-01-30 02:43:55
1.听说事务是采用锁机制,事务有4个隔离级别(未授权读取 授权读取 可重复读取 串行)分别用了哪种锁?
2.数据库怎样默认锁,对select ,delete,update,insert 语句怎么默认的?
3.听说对程序员而言,只有悲观锁和乐观锁,为什么这么说?程序员怎么在程序端和数据库端使用锁?
...全文
84
7
打赏
收藏
锁和事务
1.听说事务是采用锁机制,事务有4个隔离级别(未授权读取 授权读取 可重复读取 串行)分别用了哪种锁? 2.数据库怎样默认锁,对select ,delete,update,insert 语句怎么默认的? 3.听说对程序员而言,只有悲观锁和乐观锁,为什么这么说?程序员怎么在程序端和数据库端使用锁?
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
crazylaa
2010-01-30
打赏
举报
回复
oracle的TM锁、TX锁知识完全普及
http://blog.csdn.net/crazylaa/archive/2009/12/08/4966787.aspx
Dave
2010-01-30
打赏
举报
回复
[Quote=引用 3 楼 xuzhenghang 的回复:]
不会那么简单吧!自己会管理
[/Quote]
这是Oracle 的机制, 假如有50个用户访问一个表, 都作增删改成的事务, 如果手动来管理,这个就不太现实了。 在写程序的时候,只要写SQL 就可以了, 至于sql 如何在数据库来运行, 如何进行相关的锁管理,这些就交给数据库自己管理了。
------------------------------------------------------------------------------
Blog
: http://blog.csdn.net/tianlesoftware
网上资源
: http://tianlesoftware.download.csdn.net
相关视频
:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
Q Q 群:62697716
xuzhenghang
2010-01-30
打赏
举报
回复
我是用来开发的,不是专门的DBA.
xuzhenghang
2010-01-30
打赏
举报
回复
不会那么简单吧!自己会管理
zhangwonderful
2010-01-30
打赏
举报
回复
1楼说的没有错
Dave
2010-01-30
打赏
举报
回复
Oracle 的锁都是自动管理的。
ORACLE 锁机制
http://blog.csdn.net/tianlesoftware/archive/2009/10/20/4696896.aspx
只有发生死锁的时候我们才会去处理它。
oracle 锁问题的解决
http://blog.csdn.net/tianlesoftware/archive/2009/10/28/4733630.aspx
------------------------------------------------------------------------------
Blog
: http://blog.csdn.net/tianlesoftware
网上资源
: http://tianlesoftware.download.csdn.net
相关视频
:http://blog.csdn.net/tianlesoftware/archive/2009/11/27/4886500.aspx
Q Q 群:62697716
锁
和
事务
冲突
单机里面,完美解决了
锁
与
事务
一、使用
锁
的原因分析: 1、使用
锁
的目的 ------------多个外部线程同时来竞争使用同一资源时,会彼此影响,导致混乱 ------------
锁
的目的,将资源的使用做排它性处理,使同一时间,仅一个线程能访问资源 2、并不是所有的资源,都无法同时服务多个线程 ------ 比如,无状态的资源 3、无成员变量/成员变量不存在变化的类---- 就是无状态类 ----- 这种类是线程安全的 4、有状态的对象,也不一定是不安全的 ---------- 如果状态变化
Redis - 分布式
锁
和
事务
使用命令保证加
锁
操作的原子性,同时设置过期时间。
锁
的过期时间要大于操作共享资源的时间,避免
锁
被提前释放。每个线程加
锁
的时候,需要判断释放的
锁
是否和加
锁
的设置值一致,避免自己的
锁
被别的线程释放。可以塞入uuid作为value。释放
锁
可以使用Lua脚本,保证操作的原子性基于多个Redis节点的分布式
锁
,可以使用Redlock,一般是加
锁
超过半数的节点,并且加
锁
耗时不超过
锁
的有效期就认为操作成功。Redlock释放
锁
的时候,要对所有节点都释放。...
分布式
锁
和
事务
的优先级问题
如果service层中某个方法需要用到
事务
,且需要加分布式
锁
,则一般
事务
在内层,
锁
在外层, 避免出现已经解
锁
了但是
事务
还没提交,从而出现优惠券超领的情况 所以一般都是
事务
在service层中添加,但是分布式
锁
在controller层中添加 @ApiOperation("领取优惠券") @GetMapping("/add/promotion/{coupon_id}") public JsonData addPromotionCoupon( @ApiParam
Django中ORM的
锁
和
事务
Django中ORM的
锁
和
事务
一、
锁
1.行级
锁
2.表
锁
二、
事务
1.全局开启2.局部使用
事务
一、
锁
1.行级
锁
select_for_update(nowait=False, skip_locked=False) #注意必须用在
事务
里面,至于如何开启
事务
,我们看下面的
事务
一节。 返回一个
锁
住行直到
事务
结束的查询集,如果数据库支持,它将生成一个 SELECT … FOR UPDATE 语句。 举...
四.吊打面试官系列-数据库优化-Mysql
锁
和
事务
原理
本篇文章主要讲解两块内容:Mysql中的
锁
和ACID原理,这2个部分是面试的时候被问的蛮多的看完本篇文章之后相信你对Mysql
事务
会有更深层次的理解,如果文章对你有所帮助请记得好评
事务
: 指作为单个逻辑工作单元(Service方法)执行的一系列操作(数据库操作。),要么完全地执行,要么完全地不执行.
事务
可以看做是一组任务,通常对应了一个业务方法,这些任务要么全部成功,要么全部失败。在实际的业务开发中我们通常在Service层通过@Transcational注解来指定
事务
。
Oracle
17,140
社区成员
55,259
社区内容
发帖
与我相关
我的任务
Oracle
Oracle开发相关技术讨论
复制链接
扫一扫
分享
社区描述
Oracle开发相关技术讨论
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章