恢复数据库的方法、装置及数据库服务器的制造方法_3

文档序号:9274611阅读:来源:国知局
则进行分析,分别确定每个所述增量备份文件中两条以上待合并为一条组提交语句的所述执行语句;所述服务器根据所述预设语句合并规则对所述两个以上所述增量备份文件进行分析,确定所述两个以上所述增量备份文件中待合并为一条组提交语句的组提交语句。
[0087]本公开中的数据库服务器同样可以采用上述分布式服务器集群的形式,由分布式服务器集群中的独立数据库服务器以一对一的方式分别对两个以上增量备份文件根据所述预设语句合并规则进行分析,确定各个所述增量备份文件中两条以上待合并为一条组提交语句的执行语句,再对两个以上增量备份文件的组提交语句进行归一化合并。
[0088]在步骤204中,根据所述两条以上待合并为一条组提交语句的所述执行语句生成所述组提交语句;
[0089]数据库服务器分别针对全量备份文件和增量备份文件将分析确定出的待合并的执行语句合并生成组提交语句。
[0090]在步骤205中,将所述组提交语句按照预设次序加入数据库消息队列;
[0091]在步骤206中,将所述备份文件中未合并的执行语句按照所述预设次序加入所述数据库消息队列;
[0092]数据库服务器除了将合并生成的组提交语句加入数据库消息队列,还要将备份文件中未合并的执行语句也加入数据库消息队列,这样才能在数据库消息队列中形成完整的备份文件。如果备份文件中没有未合并的执行语句,步骤206可以不执行。步骤205和步骤206是数据库针对全量备份文件和增量备份文件分别执行的。
[0093]在步骤207中,执行所述数据库消息队列中的所述组提交语句和所述执行语句。
[0094]数据库服务器执行数据库消息队列中的所有语句最终将所有备份文件恢复至数据库。如果备份文件中没有未合并的执行语句,则数据库服务器执行的消息队列中不包含执行语句。
[0095]本实施例的恢复数据库的方法,通过将对数据库的全量备份文件进行拆分分析,对数据库的增量备份文件进行合并分析,将两条以上待合并执行语句合并为一条组提交语句,实现两种备份文件中多个相同的操作的一次性执行,进一步加快恢复数据库的时间,缩短恢复数据库过程中服务中断的时间,提升用户体验。
[0096]作为示例,图3是图2示例性实施例的恢复数据库的过程示意图,如图3所示,数据库服务器启动多个处理线程,其中,一个处理线程用于分析全量备份文件,将全量备份文件中的两个以上待合并执行语句合并生成group commit语句,包含该group commit语句的文件为合并全量备份文件,该处理线程将group commit语句按照预设次序加入数据库消息队列;另一个或多个处理线程用于分析一个或多个增量备份文件,处理线程与增量备份文件一一对应,一个处理线程将一个增量备份文件中的两个以上待合并执行语句合并生成group commit语句,包含该group commit语句的文件为合并增量备份文件,然后一个处理线程对一个或多个合并增量备份文件再次分析,将待合并group commit语句合并生成归一化的group commit语句,包含该归一化的group commit语句的文件为归一化合并增量备份文件,处理线程将归一化的group commit语句按照预设次序加入数据库消息队列。数据库服务器执行数据库消息队列中的合并全量备份文件的group commit语句和归一化合并增量备份文件的归一化的group commit语句,恢复数据库。
[0097]图4是根据一示例性实施例示出的一种恢复数据库的装置框图。参照图4,该装置包括分析单元11、合并单元12以及执行单元13。
[0098]该分析单元11被配置为根据预设语句合并规则对数据库的备份文件进行分析,所述备份文件包括一条以上执行语句,确定两条以上待合并为一条组提交语句的所述执行语句。
[0099]该合并单元12被配置为根据分析单元11确定出来的所述两条以上待合并为一条组提交语句的所述执行语句生成所述组提交语句。
[0100]该执行单元13被配置为将合并单元12生成的所述组提交语句按照预设次序加入数据库消息队列,执行所述数据库消息队列中的所述组提交语句。
[0101]进一步的,所述备份文件包括全量备份文件和增量备份文件。
[0102]进一步的,所述执行单元13被配置为将所述备份文件中未合并的执行语句按照所述预设次序加入所述数据库消息队列,执行所述数据库消息队列中的所述执行语句。
[0103]本实施例的恢复数据库的装置,通过将数据库的备份文件中两条以上待合并执行语句合并为一条组提交语句,实现多个相同的操作的一次性执行,加快恢复数据库的时间,缩短恢复数据库过程中服务中断的时间,提升用户体验。
[0104]图5是根据一示例性实施例示出的一种恢复数据库的装置框图。参照图5,该装置在图4所示装置实施例基础上,分析单元11还包括全量分析模块111和增量分析模块112。
[0105]该全量分析模块111,被配置为根据所述预设语句合并规则对所述全量备份文件进行分析,确定所述全量备份文件中两条以上待合并为一条组提交语句的所述执行语句。
[0106]该增量分析模块112,被配置为根据所述预设语句合并规则对所述增量备份文件进行分析,确定所述增量备份文件中两条以上待合并为一条组提交语句的所述执行语句。
[0107]图6是根据一示例性实施例示出的一种恢复数据库的装置框图。参照图6,该装置在图5所示装置实施例基础上,全量分析模块111还包括文件拆分子模块1111和全量分析子模块1112。
[0108]该文件拆分子模块1111被配置为将所述全量备份文件拆分为两个以上全量备份子文件。
[0109]该全量分析子模块1112被配置为启动两个以上处理线程分别对文件拆分子模块1111拆分出来的所述两个以上全量备份子文件根据所述预设语句合并规则进行分析,确定各个所述全量备份子文件中两条以上待合并为一条组提交语句的所述执行语句。
[0110]本实施例的恢复数据库的装置,对全量备份文件进一步拆分,通过多个处理线程同时对各个全量备份子文件进行分析,可以进一步提高恢复数据库的速度。
[0111]可选的,本公开中的恢复数据库的也可以是以分布式服务器集群的形式,由分布式服务器集群中的独立数据库服务器将所述全量备份文件拆分为两个以上全量备份子文件;两个以上数据库服务器分别对所述两个以上全量备份子文件根据所述预设语句合并规则进行分析,确定各个所述全量备份子文件中两条以上待合并为一条组提交语句的所述执行语句。
[0112]图7是根据一示例性实施例示出的一种恢复数据库的装置框图。参照图7,该装置在图5所示装置实施例基础上,增量分析模块112还包括第一增量分析子模块1121和第二增量分析子模块1122。
[0113]该第一增量分析子模块1121被配置为启动两个以上处理线程分别对两个以上所述增量备份文件根据所述预设语句合并规则进行分析,分别确定每个所述增量备份文件中两条以上待合并为一条组提交语句的所述执行语句。
[0114]该第二增量分析子模块1122根据所述预设语句合并规则对所述两个以上所述增量备份文件进行分析,确定所述两个以上所述增量备份文件中待合并为一条组提交语句的组提交语句。
[0115]本实施例的恢复数据库的装置,通过多个处理线程对增量备份文件进行分析和合并,再对合并后的多个增量备份文件再分析,最终将各个增量备份文件合并为一个归一化的增量备份文件,提高增量备份文件的恢复速度。
[0116]可选的,本公开中的恢复数据库的也可以是以分布式服务器集群的形式,由分布式服务器集群中的两个以上独立数据库服务器分别对两个以上所述增量备份文件根据所述预设语句合并规则进行分析,分别确定每个所述增量备份文件中两条以上待合并为一条组提交语句的所述执行语句;所述服务器根据所述预设语句合并规则对所述两个以上所述增量备份文件进行分析,确定所述两个以上所述增量备份文件中待合并为一条组提交语句的组提交语句。
[0117]图8是根据一示例性实施例示出的一种恢复数据库的装置框图。参照图8,该装置在图4所示装置实施例基础上,还包括滤除单元14。
[0118]该滤除单元14,被配置为将所述备份文件中对恢复所述数据库不产生影响的执行语句滤除掉。
[0119]本实施例的恢复数据库的装置,通过将备份文件中对恢复数据库不产生影响的执行语句滤除掉,进一步加快恢复数据库的时间,缩短恢复数据库过程中服务中断的时间,提升用户体验。
[0120]图4-图8所示的装置,用于实现上述图1-图2所示的方法流程。关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
[0121]图9是根据一示例性实施例示出的一种数据库服务器的框图。参照图9,数据库服务器900包括处理组件901,其进一步包括一个或多个处理器,以及由存储器902所代表的存储器资源,用于存储可由处理组件901可执行的指令,例如应用程序。存储器902中存储的应用程序可以包括一
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1