一种集群数据库容灾方法及装置的制造方法
【技术领域】
[0001]本发明涉及服务器集群及数据库容灾技术领域,特别是涉及一种集群数据库容灾方法及装置。
【背景技术】
[0002]传统的集群数据库容灾方案都采用双机互备,或者额外配置磁带库进行数据库数据备份,大型企业更需要采用远程异地数据库备份。其数据库容灾都比较固定,或者需要投入额外的资金。其中,磁带库需要投入大量资金进行购买,还需要投入额外的磁带库维护。双机热备则存在隐患,需要保证备机使用时,主机能尽快修复,否则数据库无法保证其安全。异地灾备中心则会涉及传输速度以及网络使用成本等问题。
[0003]因此,提供一种能够减少额外资源投入的数据库容灾方法及装置是非常有必要的。
【发明内容】
[0004]本发明的目的是提供一种集群数据库容灾方法及装置,目的在于解决现有数据库容灾方案中资源消耗较大的问题。
[0005]为解决上述技术问题,本发明提供一种集群数据库容灾方法,包括:
[0006]在服务器集群的N个节点上分别部署数据库,并将所述数据库初始化到同一状态,所述N为大于2的正整数;
[0007]从所述节点中选择两个节点分别作为主节点、从节点,位于所述主节点的数据库为主数据库,位于所述从节点的数据库为保持与所述主数据库数据同步的从数据库;
[0008]检测所述主节点的健康状态;
[0009]当所述主节点发生宕机时,将所述从节点作为当前主节点,并选择所述服务器集群中其他节点作为当前从节点。
[0010]可选地,所述当所述主节点发生宕机时,将所述从节点作为当前主节点,并选择所述服务器集群中其他节点作为当前从节点包括:
[0011]当所述主节点发生宕机时,检测所述从节点的健康状态;
[0012]当所述从节点为正常状态时,将所述从节点作为当前主节点,并选择所述服务器集群中的其他节点作为当前从节点。
[0013]可选地,所述当所述主节点发生宕机时,将所述从节点作为当前主节点,并选择所述服务器集群中其他节点作为当前从节点包括:
[0014]当所述主节点发生宕机时,将所述从节点作为当前主节点,并选择所述服务区集群中其他存活节点作为当前从节点。
[0015]可选地,还包括:
[0016]向用户提示所述当前主节点以及所述当前从节点的信息。
[0017]本发明还提供了一种集群数据库容灾装置,包括:
[0018]设置模块,用于在服务器集群的N个节点上分别部署数据库,并将所述数据库初始化到同一状态,所述N为大于2的正整数;
[0019]选择模块,用于从所述节点中选择两个节点分别作为主节点、从节点,位于所述主节点的数据库为主数据库,位于所述从节点的数据库为保持与所述主数据库数据同步的从数据库;
[0020]检测模块,用于检测所述主节点的健康状态;
[0021]容灾模块,用于当所述主节点发生宕机时,将所述从节点作为当前主节点,并选择所述服务器集群中其他节点作为当前从节点。
[0022]可选地,所述容灾模块用于当所述主节点发生宕机时,将所述从节点作为当前主节点,并选择所述服务器集群中其他节点作为当前从节点包括:
[0023]所述容灾模块具体用于当所述主节点发生宕机时,检测所述从节点的健康状态;当所述从节点为正常状态时,将所述从节点作为当前主节点,并选择所述服务器集群中的其他节点作为当前从节点。
[0024]可选地,所述容灾模块用于当所述主节点发生宕机时,将所述从节点作为当前主节点,并选择所述服务器集群中其他节点作为当前从节点包括:
[0025]所述容灾模块具体用于当所述主节点发生宕机时,将所述从节点作为当前主节点,并选择所述服务区集群中其他存活节点作为当前从节点。
[0026]可选地,还包括:
[0027]提示模块,用于向用户提示所述当前主节点以及所述当前从节点的信息。
[0028]本发明所提供的集群数据库容灾方法及装置,通过在服务器集群的N个节点上分别部署数据库,并将数据库初始化到同一状态;在节点中选择两个节点分别作为主节点、从节点,位于主节点的数据库为主数据库,位于从节点的数据库为保持与主数据库数据同步的从数据库;后台检测主节点的健康状态;当所述主节点发生宕机时,将从节点作为当前主节点,并选择所述服务器集群中其他节点作为当前从节点。本发明所提供的集群数据库容灾方法及装置,充分利用了集群环境的特殊性,将数据库的容灾方案变为1+1+N的模式。能够在保证数据库数据安全的同时,节省了额外的资源投入。另外,在同一时刻,仅需要保持主节点与从节点的数据同步即可,大大减少了数据库同步数据流。
【附图说明】
[0029]图1为本发明所提供的集群数据库容灾方法的一种【具体实施方式】的方法流程图;
[0030]图2为本发明所提供的集群数据库容灾方法的另一种【具体实施方式】的方法流程图;
[0031]图3为本发明所提供的集群数据库容灾装置的一种【具体实施方式】的结构框图。
【具体实施方式】
[0032]为了使本技术领域的人员更好地理解本发明方案,下面结合附图和【具体实施方式】对本发明作进一步的详细说明。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0033]本发明所提供的集群数据库容灾方法的一种【具体实施方式】的方法流程图如图1所示,该方法包括:
[0034]步骤SlOl:在服务器集群的N个节点上分别部署数据库,并将所述数据库初始化到同一状态,所述N为大于2的正整数;
[0035]步骤S102:从所述节点中选择两个节点分别作为主节点、从节点,位于所述主节点的数据库为主数据库,位于所述从节点的数据库为保持与所述主数据库数据同步的从数据库;
[0036]步骤S103:检测所述主节点的健康状态;
[0037]步骤S104:当所述主节点发生宕机时,将所述从节点作为当前主节点,并选择所述服务器集群中其他节点作为当前从节点。
[0038]本发明所提供的集群数据库容灾方法,通过在服务器集群的N个节点上分别部署数据库,并将数据库初始化到同一状态;在节点中选择两个节点分别作为主节点、从节点,位于主节点的数据库为主数据库,位于从节点的数据库为保持与主数据库数据同步的从数据库;检测主节点的健康状态;当所述主节点发生宕机时,将从节点作为当前主节点,并选择所述服务器集群中其他节点作为当前从节点。本发明所提供的集群数据库容灾方法,充分利用了集群环境的特殊性,将数据库的容灾方案变为1+1+N的模式。能够在保证数据库数据安全的同时,节省了额外的资源投入。另外,在同一时刻,仅需要保持主节点与从节点的数据同步即可,大大减少了数据库同步数据流。
[0039]本发明所提供的集群数据库容灾方法的另一种【具体实施方式】的方法流程图如图2所示,该方法包括:
[0040]步骤S201:在服务器集群的N个节点上分别部署数据库,并将所述数据库初始化到同一状态,所述N为大于2的正整数;
[0041]具体地,由于本发明所提供的集群数据容灾方法的硬件环境是处在集群环境中,因此,在集群环境搭建完成后,由使用者评估,在集群的N个节点上同时部署数据库,并初始化到同一状态。
[0042]步骤S202:从所述节点中选择两个节点分别作为主节点、从节点,位于所述主节点的数据库为主数据库,位