(19)国家知识产权局 (12)发明 专利申请 (10)申请公布号 (43)申请公布日 (21)申请 号 202210540508.5 (22)申请日 2022.05.17 (71)申请人 贝壳找房 (北京) 科技有限公司 地址 100085 北京市海淀区西二 旗西路2号 院35号楼01层102-1 (72)发明人 张良 赵宇航  (74)专利代理 机构 北京路浩知识产权代理有限 公司 11002 专利代理师 谢志超 (51)Int.Cl. G06F 16/21(2019.01) G06F 16/242(2019.01) G06F 16/2455(2019.01) (54)发明名称 数据库故障止损方法、 装置、 电子 设备、 介质 及程序产品 (57)摘要 本发明实施例提供一种数据库故障止损方 法、 装置、 电子设备、 介质及程序产品, 该方法包 括: 确定待封禁的异常SQL语句以及所在的数据 库实例; 提取表示异常SQL语句所属的一类SQL语 句的SQL指纹; 向数据库实例所在数据库服务器 发送封禁命令, 封禁命令包括数据库实例的实例 ID、 SQL指纹及SQL指纹的重写规则, 以使数据库 服务器根据实例ID及SQL指纹对数据库实例写入 重写规则, 触发重写规则生效。 本发明提供的数 据库故障止损方法、 装置、 电子设备、 介质及程序 产品, 通过将异常SQL语句进行重写, 可 实现根据 改写后的SQL语句执行SQL请求, 可以实现对于异 常SQL语句的快速处理及结果返回, 有效且快速 地实现数据库故障止损。 权利要求书2页 说明书13页 附图4页 CN 115185921 A 2022.10.14 CN 115185921 A 1.一种数据库故障止损方法, 其特 征在于, 包括: 确定待封禁的异常SQ L语句以及所述异常SQ L语句所在的数据库实例; 根据所述异常SQL语句提取SQL指纹; 其中, 所述SQL指纹用于表示所述异常SQL语句 所 属的一类SQ L语句; 向所述数据库实例所在的数据库服务器发送封禁命令, 所述封禁命令包括所述数据库 实例的实例ID、 所述SQL指纹以及所述SQL指纹对应的SQL语句的重写规则, 以使 所述数据库 服务器在接收到所述封禁命令后, 根据所述实例ID及所述SQL指纹对所述数据库实例写入 所述重写规则, 并触发所述重写规则生效。 2.根据权利要求1所述的数据库故障止损方法, 其特征在于, 所述重写规则包括: 将所 述SQL指纹对应的SQ L语句替换为 直接返回结果 集的指令 。 3.根据权利要求1所述的数据库故障止损方法, 其特征在于, 在所述向所述数据库实例 所在的数据库服务器发送封禁命令之前, 所述方法还包括: 接 收客户端发送的所述重写规 则。 4.根据权利要求1所述的数据库故障止损方法, 其特 征在于, 所述确定待封禁的异常SQL语句以及所述异常SQL语句所在的数据库实例, 包括: 向客 户端发送发生异常的数据库实例的信息; 接收所述客户端发起的所述数据库实例的SQL请 求的查询指令; 向所述数据库实例所在的所述数据库服务器发送所述查询指令; 接 收所述 数据库服务器返回的所述查询指令的查询结果, 所述查询结果包括所述数据库实例正在执 行的SQL请求; 将所述查询结果 发送到所述客户端进 行展示; 接收所述客户端根据所述查询 结果确定的所述待封禁的异常SQ L语句以及所述异常SQ L语句所在的数据库实例的信息; 或, 所述确定待封禁的异常SQL语句以及所述异常SQL语句所在的数据库实例, 包括: 接 收客户端输入的所述待封禁的异常SQL语句以及所述异常SQL语句所在的数据库实例的信 息。 5.根据权利要求1所述的数据库故障止损方法, 其特征在于, 在所述向所述数据库实例 所在的数据库服 务器发送封禁命令之后, 所述方法还 包括: 将封禁信息写入数据库表, 根据所述数据库表在客户端展示封禁列表; 其中, 所述封禁 信息包括所述SQL指纹、 重写后的SQL语句, 所述数据库实例、 数据库名称、 操作人、 封禁状 态、 所述实例ID、 时间信息中的至少一种; 所述封禁列表包括全部或部分所述封禁信息, 并 支持根据预设封禁信息进行查询; 和/或, 触发所述数据库服务器根据所述封禁命令创建或更新重写规则表, 所述重写规 则表包括所述实例ID及所述重写规则。 6.根据权利要求5所述的数据库故障止损方法, 其特 征在于, 所述方法还 包括: 接收所述客户端发送的封禁状态更改指令; 其中, 所述封禁状态更改指令包括待进行 封禁状态更改的至少一个数据库实例的信息; 分别获取所述数据库实例所在的所述数据库服务器, 并向所述数据库服务器发送所述 数据库实例的所述封禁状态更改指 令, 以供所述数据库服务器对相应的所述数据库实例执 行相应的封禁 状态更改; 其中, 所述封禁状态更改指令包括封禁状态禁用指令、 封禁状态启用指令及封禁删除 指令中的至少一种。权 利 要 求 书 1/2 页 2 CN 115185921 A 27.根据权利要求1所述的数据库故障止损方法, 其特 征在于, 所述方法还 包括: 获取所述数据库实例被封禁的SQL语句的数量, 根据所述被封禁的SQL语句的数量绘制 封禁监控曲线并发送到客户端 进行展示。 8.一种数据库故障止损装置, 其特 征在于, 包括: 异常SQL信息确定模块, 用于: 确定待封禁的异常SQL语句以及 所述异常SQL语句所在的 数据库实例; SQL指纹获取模块, 用于: 根据所述异常SQL语句提取SQL指纹; 其中, 所述SQL指纹用于 表示所述异常SQ L语句所属的一类SQ L语句; 封禁模块, 用于: 向所述数据库实例所在的数据库服务器发送封禁命令, 所述封禁命令 包括所述数据库实例的实例ID、 所述SQL指纹以及所述SQL指纹对应的SQL语句的重写规则, 以使所述数据库服务器在接收到所述封禁命令后, 根据所述实例ID及所述SQL指纹对所述 数据库实例写入所述重写规则, 并触发所述重写规则生效。 9.一种电子设备, 包括存储器、 处理器及存储在所述存储器上并可在所述处理器上运 行的计算机程序, 其特征在于, 所述处理器执行所述程序时实现如权利要求1至7任一项所 述数据库故障止损方法的步骤。 10.一种非暂态计算机可读存储介质, 其上存储有计算机程序, 其特征在于, 所述计算 机程序被处 理器执行时实现如权利要求1至7任一项所述数据库故障止损方法的步骤。 11.一种计算机程序产品, 包括计算机程序, 其特征在于, 所述计算机程序被处理器执 行时实现如权利要求1至7任一项所述数据库故障止损方法的步骤。权 利 要 求 书 2/2 页 3 CN 115185921 A 3

.PDF文档 专利 数据库故障止损方法、装置、电子设备、介质及程序产品

文档预览
中文文档 20 页 50 下载 1000 浏览 0 评论 309 收藏 3.0分
温馨提示:本文档共20页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
专利 数据库故障止损方法、装置、电子设备、介质及程序产品 第 1 页 专利 数据库故障止损方法、装置、电子设备、介质及程序产品 第 2 页 专利 数据库故障止损方法、装置、电子设备、介质及程序产品 第 3 页
下载文档到电脑,方便使用
本文档由 人生无常 于 2024-03-18 00:15:01上传分享
站内资源均来自网友分享或网络收集整理,若无意中侵犯到您的权利,敬请联系我们微信(点击查看客服),我们将及时删除相关资源。