您现在的位置是:首页> 编程文章 个人博客模板

关于 Laravel 数据库查询锁必须要知道的知识点

无痕小Q个人博客 2020-02-28 00:21:11主页 950人已围观

简介关于 Laravel 数据库查询锁必须要知道的知识点

Mysql 锁的类型


1 共享锁

* 查询数据 会阻塞 等待没有任何人占用的时候再返回

* 更新数据 会阻塞 等待没有任何人占用的时候再返回


DB::table('users')->where('id', 100)->lockForUpdate()->first();

2 悲观锁

* 查询数据 正常查询返回

* 更新数据 会阻塞 等待上一个锁更新执行完毕后再更新


DB::table('users')->where('id', 100)->sharedLock()->first();

如果我直接使用锁不使用事务能正常逻辑吗?


正确

DB::transaction(function() {

  $user = DB::table('users')->where('id', 100)->lockForUpdate()->first();

  $user->nick_name = "老王";

  $user->save();

});

错误

$user = DB::table('users')->where('id', 100)->lockForUpdate()->first();

$user->nick_name = "老王";

$user->save();

阅读量! (950)

关于本站

昵称:无痕小Q

职业:php-go-web开发工程师

现居:北京

Email:1838638884@qq.com

点击排行

人生是一支歌,悠扬的旋律谱写出你春天的耕耘和秋天的收获;人生是一幅画,优美的线条勾画出你黎明的勤奋和傍晚的辉煌;人生是一首诗,优美的意境,书写着你失意的懊恼和成功的喜悦。 人生是一支歌,悠扬的旋律谱写出你春天的耕耘和秋天的收获;人生是一幅画,优美的线条勾画出你黎明的勤奋和傍晚的辉煌;人生是一首诗,优美的意境,书写着你失意的懊恼和成功的喜悦。
    寒雨连江夜入吴,平明送客楚山孤。
洛阳亲友如相问,一片冰心在玉壶。

网站公告

  • 欢迎来到我的博客

  • 1:欢迎来到我的博客


    2:博客免费api接口现已上线


    3:博客会定期更新文章


    4:欢迎大家来捧场


    众生平庸, 你是人间星光.

站点信息

要说酸甜苦辣都不足以形容人生的苦于乐,唯有一个熬字,各中滋味万千,身在其中的人最明白。 尘中见月心亦闲,况是清秋仙府间。 凝光悠悠寒露坠,此时立在最高山。 碧虚无云风不起,山上长松山下水。 群动悠然一顾中,天高地平千万里。 少君引我升玉坛,礼空遥请真仙官。
  • 建站时间:2019-8-30
  • 网站程序:php,laravel-swoole框架
  • 今日流量:0(10分钟统计一次)
  • 本月流量:0
  • 浏览总量:396141
  • 统计方式:中间件,redis消息队列,定时任务
    生活的道路一旦选定,就要勇敢地走到底,决不回头。