【数据库】封锁技术

前言

        前几天我们自考小组,一起学习数据库,学习到了并发操作,由于并行技术带来了几个问题,通过锁可以解决这些问题,但是锁不好理解,完全不知道是怎么用的,听着比较高大上,但是经过分析也就不过如此。

一、并发操作

        许多事务可能同时对同一数据进行操作,这个操作叫做并发操作,这里的”并发“指的是单处理机,利用分时方法实行多个事务的同时操作。
数据库的并发操作通常会带来三个问题:丢失更新问题、读脏数据问题、不可重复读问题。

  • 丢失跟新问题
            个人理解:两个或者多个并发进行的事务,同时对一个数据进行操作,当事务A先跟新了数据@,然后事务B也更新了数据@,此时就会覆盖事务A跟新的数据。就出现了丢失跟新问题。

  • 读脏数据问题
            有两种情况:
            一种是把未提交的随后被撤销的数据称为”脏数据“。用户读了”脏数据“,但是没有破坏数据库完整性。另一种是用户读了“脏数据”,引起自身的跟新操作被丢失,破坏了数据库的完整性。

  • 不可重复读问题
            个人理解:一个事务需要联系两次读同一数据A,但是在两次读操作间隔中,另一个事务改变了A的值。是的事务两次读的数据A有不同的值。

二、锁

        由于数据库的并行操作带来了三个问题,于是就引出了锁的技术。
        锁的定义是一个与数据项相关的变量,对可能应用于该数据项上的操作而言,所描述了该数据项的状态。
        锁的作用是使并发事务对数据库中数据项的访问能够同步。
        锁也分为两种:排他型锁(X锁)和共享型锁(S锁)。

  • 排他型锁(X锁)

            小故事:我的自考组长叫小倩,我和她一起去吃饭,她不吃完,我就不能吃,只能等着。
             加锁:XFIND R
             解锁:XRELEASE R

  • 共享型锁(S锁)
             小故事:现在有一个椅子,有很多人,这些人都想坐这个椅子,但是他们中不说让别人坐(解锁S),就谁都别坐。
             加锁:SFIND R
             升级或写操作:UPDX R
             解除:SRELEASE R

三、总结

         通过这次的学习,发现学习计算机还就是要编小故事,让大家都有兴趣学习,有兴趣学习计算机,才能前进。加油!

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 16
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

你个佬六

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值