[发明专利]一种实现云数据库回滚的方法及系统在审
申请号: | 201210379626.9 | 申请日: | 2012-09-29 |
公开(公告)号: | CN103714089A | 公开(公告)日: | 2014-04-09 |
发明(设计)人: | 沈强;谢振业;曹玮 | 申请(专利权)人: | 上海盛大网络发展有限公司 |
主分类号: | G06F17/30 | 分类号: | G06F17/30;G06F11/14;H04L29/08 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
地址: | 201203 上海市*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实现 数据库 方法 系统 | ||
技术领域
本发明涉及云数据库领域,具体涉及一种实现云数据库回滚的方法及系统。
背景技术
数据库技术产生于20世纪60年代,随着计算机技术、通信技术和网络技术的快速发展,数据库技术也得到迅猛发展,成为信息化社会中最重要的支撑技术之一。随着数据库技术在各个行业和各个领域大量广泛的应用,在对数据库应用的过程中,人为误操作、人为恶意破坏、系统的不稳定、存储介质的损坏等等原因,都有可能造成重要数据的丢失。一旦数据出现丢失或者损坏,都将给企业和个人带来巨大的损失。因此,当数据库发生硬件或软件故障时,需要有效的将数据库回滚到某个正确状态或时间点,并保证数据库一致性和完整性。
自2007年“云计算”概念被提出以来,云计算技术和产品被大量推广普及,随着云计算逐渐从概念走向实际应用,基于云的数据库也逐渐得到重视和发展。云数据库不同于传统模式下搭建于本地服务器的数据库,它是部署与搭建在云计算环境中的数据库,用户只需要一个链接字符串即可从本地主机连接到云数据库进行操作。同样,用户使用搭建在云计算环境中的云数据库时也有回滚数据库的需求。
在现有技术中,一个云数据库实例可以由一台云主机搭载一个或多个云硬盘组成。搭建在云计算环境中的云数据库在回滚时,需要有效的数据库备份,在数据库备份的基础上执行灾难恢复策略。数据库备份有完全备份或差异备份等方式,完全备份需要备份整个数据库,包含用户表、系统表、索引、视图和存储过程等所有数据库对象;差异备份只备份数据库自上次完全备份以来所改变的数据库。为了保证数据安全性及可靠性,数据库备份文件可以分别保存在与云主机对应的多个云硬盘中,但是,云硬盘需要搭载在云主机上才能使用,当云主机发生故障时,无法及时有效地进行云数据库回滚,无法保证数据的一致性,同时增加系统成本及数据维护的人力消耗。
发明内容
有鉴于此,本发明的主要目的是提供一种实现云数据库回滚的方法及系统,解决现有技术中实现数据库回滚使用云硬盘对数据库进行备份,存在无法及时有效地进行云数据库回滚,保证数据的一致性,同时增加系统成本及人力消耗的问题。
为解决上述问题,本发明提供的技术方案如下:
一种实现云数据库回滚的方法,所述方法包括:
向云数据库实例发送创建镜像指令或上传操作日志指令,以使所述云数据库实例收到所述创建镜像指令后,创建数据库镜像,并将所述数据库镜像上传至云存储模块,收到所述上传操作日志指令后,将所述云数据库实例的操作日志文件上传至所述云存储模块;
接收到用户发送的回滚数据库指令后,申请一个未被使用的云数据库实例,以使所述未被使用的云数据库实例从所述云存储模块下载最新上传的数据库镜像以及相应的操作日志文件,并在所述最新上传的数据库镜像的基础上对所述相应的操作日志文件中所记录的操作内容进行重放操作。
相应的,所述方法还包括:
将所述数据库镜像上传至所述云存储模块后,将数据库镜像信息上传至数据库模块;
将所述云数据库实例的操作日志文件上传至所述云存储模块后,将日志文件信息上传至所述数据库模块。
相应的,一个所述云数据库实例包括一台云主机和一个与所述云主机对应的云硬盘;
所述未被使用的云数据库实例从所述云存储模块下载最新上传的数据库镜像以及相应的操作日志文件,包括:
未被使用的云主机开机启动后运行初始化脚本,所述初始化脚本自动查询所述数据库模块以获得所述数据库镜像信息;
根据所述数据库镜像信息,从所述云存储模块下载最新上传的数据库镜像到与所述未被使用的云主机对应的云硬盘中的挂载目录;所述数据库镜像信息包括所述数据库镜像的创建时间、名称、对应的云数据库实例名称以及在所述云存储模块中的存储位置;
所述初始化脚本自动查询所述数据库模块以获得所述日志文件信息;
根据所述日志文件信息,从所述云存储模块下载相应的操作日志文件;所述日志文件信息包括操作日志文件的创建时间、名称、对应的云数据库实例名称以及在所述云存储模块中的存储位置。
相应的,所述在所述最新上传的数据库镜像的基础上对所述相应的操作日志文件中所记录的操作内容进行重放操作,包括:
所述初始化脚本启动数据库服务,并将所述云硬盘中的挂载目录作为所述数据库服务的数据目录,获得所述最新上传的数据库镜像;
所述数据库服务在所述最新上传的数据库镜像的基础上对所述相应的操作日志文件中所记录的操作内容进行重放操作。
相应的,所述方法还包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海盛大网络发展有限公司,未经上海盛大网络发展有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210379626.9/2.html,转载请声明来源钻瓜专利网。