[发明专利]一种数据库在线热备份的方法和设备在审
| 申请号: | 202010083396.6 | 申请日: | 2020-02-09 |
| 公开(公告)号: | CN111324617A | 公开(公告)日: | 2020-06-23 |
| 发明(设计)人: | 徐基法;邓淮谦 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
| 主分类号: | G06F16/23 | 分类号: | G06F16/23;G06F16/2455;G06F11/14 |
| 代理公司: | 北京连和连知识产权代理有限公司 11278 | 代理人: | 张涛 |
| 地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 数据库 在线 备份 方法 设备 | ||
1.一种数据库在线热备份的方法,其特征在于,包括以下步骤:
基于DBUtils将主数据库进行封装并连接到备份数据库,并在所述主数据库中建立缓存列表;
响应于在所述主数据库中建立事务执行SQL命令,识别对所述主数据库的更新操作并将与其相关的SQL命令记录在所述缓存列表中;
响应于所述事务提交,将所述缓存列表中的所述SQL命令按序放入RabbitMQ队列中并清空所述缓存列表;
经由Celery的异步机制调用Worker工作进程连接所述备份数据库异步执行所述RabbitMQ队列中的所述SQL命令以完成备份。
2.根据权利要求1所述的方法,其特征在于,还包括:配置所述主数据库和所述备份数据库的数据库类型、IP地址、最大自动连接次数和邮箱信息。
3.根据权利要求1所述的方法,其特征在于,所述更新操作包括插入、更新和删除。
4.根据权利要求1所述的方法,其特征在于,还包括:
通过自动捕捉识别所述主数据库连接是否异常;
响应于所述主数据库连接异常,发送邮件通知运维人员。
5.根据权利要求4所述的方法,其特征在于,还包括:
响应于所述主数据库异常并且连接所述主数据库已经超过最大自动连接次数,将所述备份数据库作为主数据库提供服务;
响应于在所述备份数据库中建立事务执行SQL命令,识别对所述备份数据库的更新操作并将所述SQL命令记录在所述RabbitMQ队列中,并停止所述Worker工作进程;
响应于所述主数据库恢复,重新启动所述Worker工作进程以将所述更新操作备份到所述主数据库中。
6.一种数据库在线热备份的设备,其特征在于,所述设备包括:
连接模块,所述连接模块配置为基于DBUtils将主数据库进行封装并连接到备份数据库,并在所述主数据库中建立缓存列表;
识别模块,所述识别模块配置为响应于在所述主数据库中建立事务执行SQL命令,识别对所述主数据库的更新操作并将与其相关的SQL命令记录在所述缓存列表中;
写入模块,所述写入模块配置为响应于所述事务提交,将所述缓存列表中的所述SQL命令按序放入RabbitMQ队列中并清空所述缓存列表;
备份模块,所述备份模块配置为经由Celery的异步机制调用Worker工作进程连接所述备份数据库异步执行所述RabbitMQ队列中的所述SQL命令以完成备份。
7.根据权利要求6所述的设备,其特征在于,还包括配置模块,所述配置模块配置为配置所述主数据库和所述备份数据库的数据库类型、IP地址、最大自动连接次数和邮箱信息。
8.根据权利要求6所述的设备,其特征在于,所述更新操作包括插入、更新和删除。
9.根据权利要求6所述的设备,其特征在于,还包括判断模块,所述判断模块配置为:
通过自动捕捉识别所述主数据库连接是否异常;
响应于所述主数据库连接异常,发送邮件通知运维人员。
10.根据权利要求9所述的设备,其特征在于,还包括切换模块,所述切换模块配置为:
响应于所述主数据库异常并且连接所述主数据库已经超过最大自动连接次数,将所述备份数据库作为主数据库提供服务;
响应于在所述备份数据库中建立事务执行SQL命令,识别对所述备份数据库的更新操作并将所述SQL命令记录在所述RabbitMQ队列中,并停止所述Worker工作进程;
响应于所述主数据库恢复,重新启动所述Worker工作进程以将所述更新操作备份到所述主数据库中。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010083396.6/1.html,转载请声明来源钻瓜专利网。





