[发明专利]一种数据库访问控制方法,及装置在审
申请号: | 201510674076.7 | 申请日: | 2015-10-15 |
公开(公告)号: | CN106599711A | 公开(公告)日: | 2017-04-26 |
发明(设计)人: | 房厚波 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F21/62 | 分类号: | G06F21/62;G06F17/30 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙)44285 | 代理人: | 王仲凯 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据库 访问 控制 方法 装置 | ||
1.一种数据库访问控制方法,应用于数据库系统,所述数据库系统存在至少两个数据库,所述至少两个数据库中包含第一数据库和第二数据库;应用与第一数据库之间建立有数据库连接,其特征在于,包括:
数据访问层接收来自所述应用的访问请求,确定所述访问请求发往的目标数据库为第二数据库;所述数据访问层建立连接代理与所述第二数据库之间的数据库连接,通过所述连接代理将所述访问请求发往所述第二数据库;
所述数据访问层确定所述访问请求发往的目标数据库为第一数据库;所述数据访问层将所述访问请求通过所述应用与所述第一数据库之间的数据库连接发往所述第一数据库。
2.根据权利要求1所述方法,其特征在于,所述应用与第一数据库之间建立有数据库连接,包括:
确定所述访问请求的访问速度需求,若所述访问速度需求属于高速直连类,则建立所述应用与第一数据库之间的数据库连接;或者,
所述应用的主库为第一数据库,所述应用与第一数据库之间的数据库连接为预配置的数据库连接。
3.根据权利要求2所述方法,其特征在于,所述建立所述应用与第一数据库之间的数据库连接之前,所述方法还包括:
确定当前不存在所述应用与第一数据库之间的数据库连接,并且所述第一数据库未达到最大连接数,则建立所述应用与第一数据库之间的数据库连接。
4.根据权利要求1至3任意一项所述方法,其特征在于,在所述数据访问层建立连接代理与所述第二数据库之间的数据库连接之前,所述方法还包括:
确定所述第二数据库的连接数是否小于第二阈值,并且所述应用对所述第二数据库的访问量或者频率是否大于第三阈值,若是则建立所述应用与第二数据库之间的数据库连接;否则执行所述建立连接代理与所述第二数据库之间的数据库连接。
5.根据权利要求4所述方法,其特征在于,在建立所述应用与第二数据库之间的数据库连接之后,所述方法还包括:
确定所述第二数据库的连接数是否大于第四阈值,并且所述应用对所述第二数据库的访问量或者频率是否小于第五阈值,所述第四阈值大于或等于所述第二阈值,所述第五阈值小于或等于所述第三阈值;若是,则拆除所述应用与第二数据库之间的数据库连接,建立连接代理与所述第二数据库之间的数据库连接。
6.根据权利要求1至3任意一项所述方法,其特征在于,所述数据访问层建立连接代理与所述第二数据库之间的数据库连接之前,所述方法还包括:
所述数据访问层获取当前存在的连接代理的工作状态,确定目标连接代理;所述目标连接代理为当前工作状态为空闲的连接代理;
建立所述应用与所述目标连接代理之间的通信连接,或者,若无空闲的连接代理并且所述第二数据库已建立的连接数未超过所述第二数据库支持的最大连接数,则建立新的连接代理作为目标连接代理;
所述数据访问层建立连接代理与所述第二数据库之间的数据库连接,通过所述连接代理将所述访问请求发往所述第二数据库,包括:建立所述目标连接代理与所述第二数据库之间的数据库连接,所述目标连接代理将所述访问请求发往所述第二数据库。
7.根据权利要求6所述方法,其特征在于,还包括:
记录当前已有的连接代理,并记录连接代理上报的当前工作状态;
在连接代理的当前工作状态空闲量大于第一阈值时,删除冗余连接代理;所述冗余连接代理依据各数据库的连接数均衡原则确定。
8.根据权利要求1至3任意一项所述方法,其特征在于,还包括:
接收对应于所述访问请求的结果数据,若所述结果数据的源端与所述应用之间存在数据库连接,则将所述结果数据路由发往所述应用;否则,则将所述结果数据通过所述连接代理发往所述应用。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510674076.7/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种用于寄送物品过程中保护个人信息的方法
- 下一篇:电子设备及其控制方法