[发明专利]数据库表的加锁方法、装置、存储介质和电子设备在审
申请号: | 202110975608.6 | 申请日: | 2021-08-24 |
公开(公告)号: | CN113760932A | 公开(公告)日: | 2021-12-07 |
发明(设计)人: | 赵景波 | 申请(专利权)人: | 北京金山云网络技术有限公司 |
主分类号: | G06F16/23 | 分类号: | G06F16/23;G06F16/22;G06F21/62 |
代理公司: | 北京华夏泰和知识产权代理有限公司 11662 | 代理人: | 曾军 |
地址: | 100085 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 数据库 加锁 方法 装置 存储 介质 电子设备 | ||
1.一种数据库表的加锁方法,其特征在于,包括:
在获取到客户端请求对数据库中的目标表进行加锁的第一加锁请求的情况下,获取所述目标表的锁标志,其中,所述锁标志用于指示所述目标表的加锁类型;
在所述锁标志为目标加锁标志的情况下,向所述客户端返回错误指令,其中,所述错误指令用于指示所述客户端访问所述目标表失败。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述锁标志为第一加锁标志的情况下,获取所述目标表的锁状态;
在所述锁状态为未加锁的情况下,将所述目标表的所述锁状态由所述未加锁的状态调整为已加锁的状态;
向所述客户端返回提示消息,以使所述客户端访问所述目标表。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
在所述锁状态为已加锁的情况下,将所述第一加锁请求保存到等待队列中。
4.根据权利要求2所述的方法,其特征在于,所述方法还包括:
解析所述第一加锁请求;
在所述第一加锁请求为目标加锁请求的情况下,在所述锁状态为未加锁的情况下,将所述目标表的所述锁状态由所述未加锁的状态调整为已加锁的状态之后,将所述目标表的所述锁标志由所述第一加锁标志调整为所述目标加锁标志。
5.根据权利要求1至4任意一项所述的方法,其特征在于,所述在获取到请求对数据库中的目标表进行加锁的第一加锁请求的情况下,获取所述目标表的锁标志包括:
在获取到所述第一加锁请求之前,获取到请求对所述目标表进行加锁的第二加锁请求的情况下,将所述第二加锁请求保存到授予队列中;
在所述第一加锁请求与所述第二加锁请求兼容的情况下,将所述第一加锁请求保存到所述授予队列并获取所述锁标志。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在所述第一加锁请求与所述第二加锁请求不兼容的情况下,将所述第一加锁请求保存到等待队列中;
在所述授予队列为空的情况下,将所述第一加锁请求从所述等待队列中转移到所述授予队列中,并获取所述锁标志。
7.一种数据库表的加锁装置,其特征在于,包括:
第一获取单元,用于在获取到客户端请求对数据库中的目标表进行加锁的第一加锁请求的情况下,获取所述目标表的锁标志,其中,所述锁标志用于指示所述目标表的加锁类型;
第一返回单元,用于在所述锁标志为目标加锁标志的情况下,向所述客户端返回错误指令,其中,所述错误指令用于指示所述客户端访问所述目标表失败。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
第二获取单元,用于在所述锁标志为第一加锁标志的情况下,获取所述目标表的锁状态;
第一调整单元,用于在所述锁状态为未加锁的情况下,将所述目标表的所述锁状态由所述未加锁的状态调整为已加锁的状态;
第二返回单元,用于向所述客户端返回提示消息,以使所述客户端访问所述目标表。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第一保存单元,用于在所述锁状态为已加锁的情况下,将所述第一加锁请求保存到等待队列中。
10.根据权利要求8所述的装置,其特征在于,所述装置还包括:
解析单元,用于解析所述第一加锁请求;
第二调整单元,用于在所述第一加锁请求为目标加锁请求的情况下,在所述锁状态为未加锁的情况下,将所述目标表的所述锁状态由所述未加锁的状态调整为已加锁的状态之后,将所述目标表的所述锁标志由所述第一加锁标志调整为所述目标加锁标志。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京金山云网络技术有限公司,未经北京金山云网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110975608.6/1.html,转载请声明来源钻瓜专利网。