1.本发明涉及计算机系统领域,尤其涉及基于业务状态自动恢复后台数据的方法和系统。
背景技术:2.近年来大数据技术迅速发展,为了提高数据库系统的可靠性,及时且准确的数据备份和恢复尤为重要。
3.当前常见的关系数据库中,备份方式通常是基于固定时间点完成数据备份,例如,每日凌晨几点进行备份。它们无法实现根据系统业务状态来进行相关数据的备份。但是用户往往希望在一个业务完成之际及时自动启动备份,而不是某个固定时间进行备份。例如,在银行金融系统应用中,用户需要根据业务状态(例如日终)来备份当前数据,而日终的时间在每一天并不固定。
4.现有系统中,系统业务状态的不确定性导致无法做到及时的自动备份和还原操作。最常见的基于oracle数据库备份还原技术中通常包括两个步骤:首先是建立备库,然后将主库的日志文件同步到备库。可见主库和备库两者通过数据日志进行同步,在这两个步骤中并没有确定业务状态的步骤,无法判断业务状态,不能满足用户基于业务状态的备份需求。
5.同时,现有的备份还原技术也不会验证主库日志文件的有效性,这样也不能保证备份还原的数据的有效性。而实际上在备份文件从主库向备库的传输过程中有可能发生数据的丢失等问题。
6.因此需要这样的一种系统,它可以根据指定的业务状态满足条件启动备份当前数据,并将备份文件传输到备库,在备库处完成数据校验,在确保备份文件正确无误之后将其还原到备库。
7.本发明的数据库备份还原技术与操作系统文件验证比对技术可以实现上述目的,解决现有技术中的前述问题。
技术实现要素:8.提供本发明内容以便以简化形式介绍将在以下详细描述中进一步描述的一些概念。本发明内容并不旨在标识出所要求保护的主题的关键特征或必要特征;也不旨在用于确定或限制所要求保护的主题的范围。
9.本发明的基于业务状态自动恢复后台数据的系统包括通信地连接的主机和备机。
10.其中主机包括:业务状态判断模块、数据备份模块、判断模块、主机哈希文件生成模块、传输模块;
11.其中备机包括:备机哈希文件生成模块、哈希文件比对模块、数据还原模块、报警模块。
12.本发明的基于业务状态自动恢复后台数据的方法包括:
13.在主机处,由业务状态判断模块判断业务系统的业务状态是否满足备份的条件,这可以通过多个业务状态参数的状态位进行判断,并在设定的时间段内以设定的间隔循环该判断步骤直至业务状态满足备份条件;
14.在主机处,在业务状态判断模块判断已经满足备份条件的情况下,由数据备份模块进行数据库备份,生成备份文件;
15.在主机处,在判断模块确定备份完成后,报告备份状态;
16.在主机处,基于备份状态为备份已经完成,由主机哈希文件生成模块针对所生成的备份文件产生主机哈希文件;
17.在主机处的传输模块将所生成备份文件与所产生的主机哈希文件一起传输至备机;
18.在备机处,由备机哈希文件生成模块针对接收到的备份文件产生备机哈希文件;
19.在备机处的哈希文件比对模块将备机哈希文件与主机哈希文件进行比对,看它们是否一致,
20.如果一致,则由备机处的数据还原模块进行数据还原,
21.如果不一致,则由备机处的报警模块发出报警信息。
22.通过阅读下面的详细描述并参考相关联的附图,这些及其他特点和优点将变得显而易见。应该理解,前面的概括说明和下面的详细描述只是说明性的,不会对所要求保护的各方面形成限制。
附图说明
23.以下将通过参考附图中示出的具体实施例来对本发明进行更具体描述。
24.图1是根据本发明的实施例的基于业务状态自动恢复后台数据的方法的流程图;
25.图2是根据本发明的实施例的基于业务状态自动恢复后台数据的系统的框图。
26.附图中的流程图和框图显示了根据本技术的实施例的系统、方法可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。
具体实施方式
27.以下将通过参考附图中示出的具体实施例来对本发明进行更具体描述。通过阅读下文具体实施方式的详细描述,本发明的各种优点和益处对于本领域普通技术人员将变得清楚明了。然而应当理解,可以以各种形式实现本发明而不应被这里阐述的各实施方式所限制。提供以下实施方式是为了能够更透彻地理解本发明。除非另有说明,本技术使用的技术术语或者科学术语应当为本技术所属领域技术人员所理解的通常意义。
28.图1是根据本发明的实施例的基于业务状态自动恢复后台数据的方法的流程图。
29.为了实现根据业务状态来备份数据,本发明的方法从步骤s10开始,判断业务状态是否满足备份条件。
30.满足业务状态备份条件的一个例子是银行金融系统中业务的日终,是银行系统每天结束当天业务工作之际柜面业务的帐务结算终了轧帐。日终在时间上并不固定,但是可
以通过系统中多个业务状态参数的状态位进行判断,来确定是否日终。
31.可以设定在某一时间段内按一定的时间间隔执行步骤s10。如果判断业务状态备份条件未能满足则在所规定的时间间隔后再次执行步骤s10,步骤s10可以被循环执行直到判断业务状态满足备份条件,例如,银行业务日终。
32.可以理解,在其他任何涉及数据库备份的业务系统中,只要能够判断业务状态是否告一段落满足备份条件,本发明的方法就可适用。具体判断业务状态是否满足备份条件,可根据不同的业务性质和系统参数进行指定,该步骤循环执行的时间段和间隔也可以根据需要调整。
33.接着,在业务状态满足备份条件时,本方法前进至步骤s20,进行数据备份,产生备份文件。可见,本发明中,触发数据备份是基于业务状态满足备份条件的,这样就满足了用户的需求。
34.在步骤s30,判断备份工作是否完成,这可以通过系统中参数的状态位来进行,在备份完成的情况下报告备份状态(备份已完成)。
35.在步骤s40,针对已生成的备份文件采用哈希hash算法产生主机哈希文件,用于后续在备机中对备份文件的有效性进行校验。
36.接着在步骤s50,定时任务根据备份状态将备份文件和所产生的主机哈希文件传输到备机。这个步骤可以由用户方根据备份状态来启动,也可以由本系统根据备份状态自行启动。
37.在步骤s60,在备机中,针对接收到的备份文件产生备机哈希文件,用于后续对备份文件的有效性进行校验。
38.在步骤s70,在备机中,将从主机接收到的哈希文件和在备机中产生的哈希文件进行比较:
39.如果一致,则说明备份文件正确地传输到了备机,因此前进到步骤s80,还原数据库;
40.如果不一致,则说明备份文件在传输过程中发生了数据丢失等问题,因此前进到步骤s90,发出报警信息。报警信息可以在用户界面上显示,也可以同时以声音等其他方式发出报警。提醒用户查看并查找原因。
41.本图2是根据本发明的实施例的基于业务状态自动恢复后台数据的系统的框图。各模块之间以有线或无线的方式进行通信连接,本领域技术人员熟知的各类通信方式皆可适用。
42.本发明的基于业务状态自动恢复后台数据的系统100包括主机200和备机300。
43.其中主机200包括:
44.·
业务状态判断模块210,用于判断业务系统的业务状态是否满足备份的条件,这可以通过系统中多个业务状态参数的状态位进行判断,若业务状态为完成当前业务满足启动备份的条件,则通知数据备份模块220启动数据备份;
45.·
数据备份模块220,用于在已经满足备份条件的情况下对主机进行数据库备份,生成备份文件,并将表现其备份状态的状态位发送到判断模块230;
46.·
判断模块230,用于判断数据备份模块220备份工作是否完成,并在确定备份完成后报告备份状态;
47.·
主机哈希文件生成模块240,用于在数据备份模块220完成备份后针对所生成备份文件产生主机哈希文件,用于后续在备机中对备份文件的有效性进行校验;
48.·
传输模块250,用于将数据备份模块220产生的备份文件与主机哈希文件生成模块240生成的主机哈希文件一起传输至备机300的接收模块310。
49.其中备机300包括:
50.·
接收模块310,用于接收来自主机的传输模块250的备份文件和主机哈希文件;
51.·
备机哈希文件生成模块320,用于在备机中针对接收到的备份文件生成备机哈希文件,用于后续对备份文件的有效性进行校验;
52.·
哈希文件比对模块330,用于比对备机哈希文件生成模块320中产生的备机哈希文件与从主机传输来的主机哈希文件是否一致,从而判断所接收的备份文件的有效性;
53.·
数据还原模块340,用于在备机哈希文件与主机哈希文件一致的情况下,基于接收模块310接收到的备份文件进行数据还原;
54.·
报警模块350,用于在备机哈希文件与主机哈希文件不一致的情况下发出报警信息,可以理解,报警模块可包括显示器,蜂鸣器等本领域技术人员了解的任何报警方式。
55.系统100的所有功能块(包括在其中的各个单元)可通过硬件、软件、硬件和软件的组合来实现。本领域技术人员应当理解,图2中描述的各功能模块仅为示例,各个功能模块根据需要可被集成为单个功能块或者划分成多个子功能块。
56.本发明的方法和系统可以根据指定的业务状态满足条件来启动当前数据的备份,并在将备份文件传输到备机后完成数据校验,在确保备份文件正确无误之后将其还原。从而实现了了业务状态满足条件就启动备份,且确保备份是正确无误的,这两个目的。相对于现有技术而言,极大地提高了系统备份的及时性和备份数据的准确性。
57.可以理解,上述实施例是代表本发明的方法和系统的完整模式,如果仅仅只是实现根据指定的业务状态满足条件来启动当前数据的备份,或者仅仅只是通过主备机哈希值完成备份文件的有效性校验,并不需要上述全部的模块执行全部的步骤。
58.以上各实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述各实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的范围,其均应涵盖在本技术的权利要求和说明书的范围当中。