本发明属于SQL Server数据库领域,尤其涉及一种SQL Server数据库的复制维护方法及系统。
背景技术:
SQL Server数据库是微软(Microsoft)公司推出的关系型数据库管理系统。其主要用于解决数据库实时同步问题,它将数据和数据库对象从一个数据库复制和分发到另一个或几个数据库中,然后在数据库间进行同步,对比数据库快照以保证数据的完整性。
然而,SQL Server数据库的复制操作要求操作人员具有专业的数据库复制知识,在升级包括SQL Server数据库的系统之前必须先删除复制,升级之后再重建复制,操作较为复杂,对于需要进行频繁升级和更新的系统来说,传统的SQL Server数据库的复制操作方法效率低下,增加了操作人员的工作强度。
技术实现要素:
本发明的目的在于提供一种SQL Server数据库的复制维护方法及系统,旨在解决SQL Server数据库的复制操作要求操作人员具有专业的数据库复制知识,在升级包括SQL Server数据库的系统之前必须先删除复制,升级之后再重建复制,操作较为复杂,对于需要进行频繁升级和更新的系统来说,传统的SQL Server数据库的复制操作方法效率低下,增加了操作人员的工作强度的问题。
本发明是这样实现的,一种SQL Server数据库的复制维护方法,所述方法包括:
接收服务器登录信息并对所述服务器登录信息进行验证;
若所述服务器登录信息验证通过,则连接至预先设置的发布服务器、分发服务器和订阅服务器;
接收一键复制指令集,根据所述一键复制指令集调用所述预先设置的发布服务器、分发服务器和订阅服务器的配置信息,并根据所述配置信息自动新建发布和订阅。
本发明还提供一种SQL Server数据库的复制维护系统,所述系统包括:
验证模块,用于接收服务器登录信息并对所述服务器登录信息进行验证;
服务器连接模块,用于若所述服务器登录信息验证通过,则连接至预先设置的发布服务器、分发服务器和订阅服务器;
一键复制模块,用于接收一键复制指令集,根据所述一键复制指令集调用所述预先设置的发布服务器、分发服务器和订阅服务器的配置信息,并根据所述配置信息自动新建发布和订阅。
本发明与现有技术相比,其有益效果在于:
通过对所述服务器登录信息进行安全性验证,在验证通过时才连接至预先设置的发布服务器、分发服务器和订阅服务器,保证登录用户的合法性,通过在接收到一键复制指令集时,调用预先设置的发布服务器、分发服务器和订阅服务器的配置信息,以自动新建发布和订阅,可实现一键复制数据库的功能,简化数据库复制操作,提高数据库复制效率,降低操作人员的工作量,降低维护成本。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的SQL Server数据库的复制维护方法的流程框图;
图2是本发明实施例二提供的SQL Server数据库的复制维护方法的流程框图;
图3是本发明实施例三提供的SQL Server数据库的复制维护系统的结构框图;
图4是本发明实施例四提供的SQL Server数据库的复制维护系统的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“包括”以及它们任何变形,意图在于覆盖不排他的包含。例如包含一系列步骤或模块的过程、方法或系统、产品或设备没有限定于已列出的步骤或模块,而是可选地还包括没有列出的步骤或模块,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或模块。
实施例一:
如图1所示,本实施例提供的SQL Server数据库的复制维护方法,其包括:
步骤S101:接收服务器登录信息并对所述服务器登录信息进行验证。
本实施例中,QL Server数据库复制是指:在数据源数据库服务器上对需要同步的数据进行发布,然后在目标数据库服务器上对所述发布进行订阅,以实现数据库数据的实时同步。数据源数据库服务器即发布服务器,目标数据库服务器即订阅服务器,分发服务器用于对发布服务器发布的数据库数据进行中转,以分别发送给一个或多个订阅服务器。
在具体应用中,所述服务器登录信息包括发布服务器、分发服务器和订阅服务器的数据库用户登录信息和计算机用户登录信息,所述用户登录信息具体包括服务器名称、登录名和密码。通过对服务器登录信息进行验证,可以增加对SQL Server数据库进行复制和维护操作的安全性,避免不法分子或者非授权用户随意的发布和订阅SQL Server数据库中的数据。
步骤S102:若所述服务器登录信息验证通过,则连接至预先设置的发布服务器、分发服务器和订阅服务器。
在具体应用中,所述预先设置的发布服务器、分发服务器和订阅服务器中每种服务器的数量至少包括一个,即可以预先设置一个或多个发布服务器、一个或多个分发服务器和一个或多个订阅服务器。
在一实施例中,步骤S101之前还包括:
维护所述预先设置的发布服务器、分发服务器和订阅服务器的配置信息。
在具体应用中,所述配置信息具体包括:
所述预先设置的发布服务器的名称、发布服务器运行快照代理进程的计算机用户和快照代理连接发布服务器的方式,所述发布数据库的名称、用户名和密码,所述预先设置的;
所述预先设置的分发服务器的名称、所述分发数据库的名称、用户名、密码和文件名和快照;
所述预先设置的订阅服务器的名称、分发代理同步此订阅时运行进程的计算机用户和分发代理连接此订阅服务器方式,所述订阅数据库的名称、用户名、密码,所述预先设置的订阅服务器。
在具体应用中,可以对预先设置的一个或多个发布服务器、一个或多个分发服务器和一个或多个订阅服务器的配置信息进行维护,所述维护操作具体包括:
增加、修改或删减所述预先设置的发布服务器、分发服务器和订阅服务器的配置信息,还可以增加或删减发布服务器、分发服务器和订阅服务器的数量。
步骤S103:接收一键复制指令集,根据所述一键复制指令集调用所述预先设置的发布服务器、分发服务器和订阅服务器的配置信息,并根据所述配置信息自动新建发布和订阅。
本实施例中,所述一键复制指令集具体是指:由一个或多个一键复制指令构成的集合。在具体应用中,当所述SQL Server数据库的复制操作包括对多个发布服务器及对应的多个分发服务器和多个订阅服务器同时执行多个发布和订阅操作时,所述一键复制指令集包括:同时执行多个发布和订阅操作的多个一键复制指令。可以根据所述配置信息一键执行所有的发布和订阅操作,也可以只执行部分的发布和订阅操作。
在具体应用中,一个发布服务器发布的数据可以被一个分发服务器分发,并被至少一个(即,一个、二个或多个)订阅服务器订阅,多个发布服务器可以对应一个分发服务器。
在一实施例中,所述方法还包括:
接收一键删除指令集,根据所述一键删除指令集,删除已经创建的发布和订阅。
在具体应用中,一键删除指令集具体是指:由一个或多个一键删除指令构成的集合。当已经创建了多个发布和订阅操作时,执行所述一键删除指令集,即可根据所述一键删除指令集中的一键删除指令删除对应的发布和订阅操作。可以一键删除已经创建的所有发布和订阅,也可以只删除部分发布和订阅。
本实施例通过对所述服务器登录信息进行安全性验证,在验证通过时才连接至预先设置的发布服务器、分发服务器和订阅服务器,保证登录用户的合法性,通过在接收到一键复制指令集时,调用预先设置的发布服务器、分发服务器和订阅服务器的配置信息,以自动新建发布和订阅,可实现一键复制数据库的功能,简化数据库复制操作,提高数据库复制效率,降低操作人员的工作量,降低维护成本。
本实施例还可以同时实现多个发布和订阅的新建和删除操作,以实现对SQL Server数据库的批量复制和删除,当系统需要频繁升级时,通过该一键批量复制和删除功能可以简化升级操作的步骤,提高升级效率,降低操作人员的工作量,方便运维人员管理。
实施例二:
如图2所示,本实施例在实施例一中步骤S101之前,还包括:
步骤201:预先设置发布服务器、分发服务器和订阅服务器。
在具体应用中,所述预先设置发布服务器、分发服务器和订阅服务器具体是指预先选择并配置好发布服务器、分发服务器和订阅服务器的配置信息。
步骤S202:选择发布数据库,选择分发数据库,新建发布。
在具体应用中,选择发布数据库具体是指,选择执行所述新建发布操作的发布服务器,然后在所选择的发布服务器中选择需要发布的数据库或者数据库中的全部或部分数据。对应的,选择分发数据库即是指,选择执行所述新建发布操作的分发服务器,然后在所选择的分发服务器中选择默认的分发数据库,若不存在默认的分发数据库,则自动创建默认的分发数据库。
在具体应用中,新建发布的数量由用于自定义设置,用户可以新建一个或多个发布。
步骤S203:选择新建的所述发布,选择订阅数据库,新建订阅。
在具体应用中,步骤S203具体是指,在新建的一个或多个发布中选择对某一个或多个发布进行订阅。选择了需要订阅的发布之后,选择用于同步所述发布服务器所发布的数据的订阅数据库,在相应的订阅服务器中对所述订阅数据库创建订阅。
步骤S204:保存所述发布和所述订阅的配置信息。
在具体应用中,保存所述发布和所述订阅的配置信息,是为了方便后面执行一键复制指令集时方便对这些配置信息进行调取,以实现一键复制功能。
步骤S205:建立与所述配置信息相关联的一键复制指令集。
在具体应用中,所述配置信息和所述一键复制指令集之间的关联关系可以是映射关系。
例如,所述配置信息,包括:
与发布服务器A对应的发布数据库A’、分发服务器a、分发数据库a’,对发布数据库A’中的数据进行订阅的订阅服务器A”、同步发布数据库A’中的数据的订阅数据库a”;
与发布服务器B对应的发布数据库B’、分发服务器b、分发数据库b’,对发布数据库B’中的数据进行订阅的订阅服务器B”、同步发布数据库B’中的数据的订阅数据库b”;
一键复制指令集包括:
用于一键复制与发布服务器A对应的发布数据库A’中数据的一键复制指令A”’;
用于一键复制与发布服务器B对应的发布数据库B’中数据的一键复制指令B”’;
则,与所述配置信息与所述一键复制指令集之间的关联关系为,A”’与A、A’、a、a’,A”、和a”相关联;B”’与B、B’、b、b’,B”、和b’相关联。
执行包括一键复制指令A”’和B”’的一键复制指令集即是指:
控制发布服务器A和分发服务器a来发布发布数据库A’中的数据,控制订阅服务器A”将发布数据库A’中的数据同步到订阅数据库a”;
控制发布服务器B和分发服务器b来发布发布数据库B’中的数据,控制订阅服务器B”将发布数据库B’中的数据同步到订阅数据库b”。
在一实施例中,步骤S205之后包括:
增加新的发布和新的订阅;
根据所述新的发布和新的订阅更新所述配置信息;
修改已经保存的所述发布和所述订阅的配置信息;
或者,删除已经保存的所述发布和所述订阅的配置信息。
通过增加、修改或删除已经预先设置好的配置信息,可以实现对发布和订阅的数据的更改,使用户可以根据需要新建新的发布和订阅,或者修改、删除已经创建的发布和订阅。
实施例三:
如图3所示,本实施例提供的SQL Server数据库的复制维护系统,其包括:
验证模块101,用于接收服务器登录信息并对所述服务器登录信息进行验证;
服务器连接模块102,用于若所述服务器登录信息验证通过,则连接至预先设置的发布服务器、分发服务器和订阅服务器;
一键复制模块103,用于接收一键复制指令集,根据所述一键复制指令集调用所述预先设置的发布服务器、分发服务器和订阅服务器的配置信息,并根据所述配置信息自动新建发布和订阅。
在一实施例中,所述系统还包括维护模块,用于维护所述预先设置的发布服务器、分发服务器和订阅服务器的配置信息;
在具体应用中,维护模块,可以对预先设置的一个或多个发布服务器、一个或多个分发服务器和一个或多个订阅服务器的配置信息进行维护,所述维护操作具体包括:
增加、修改或删减所述预先设置的发布服务器、分发服务器和订阅服务器的配置信息,还可以增加或删减发布服务器、分发服务器和订阅服务器的数量。
在具体应用中,一键复制模块103,可以根据预先设置的多个发布服务器及对应的多个分发服务器和多个订阅服务器的配置信息,同时执行多个发布和订阅操作,以实现批量复制数据库的功能。
在具体应用中,一个发布服务器发布的数据可以被一个分发服务器分发,可以被至少一个订阅服务器订阅,多个发布服务器可以对应一个分发服务器。
在一实施例中,所述系统还包括:
一键删除模块,用于接收一键删除指令集,根据所述一键删除指令集,删除已经创建的发布和订阅,可以一键删除已经创建的所有发布和订阅,也可以只删除部分发布和订阅。
实施例四:
如图4所示,本实施例所提供的SQL Server数据库的复制维护系统在实施例四的基础上还包括:
服务器设置模块201,用于预先设置发布服务器、分发服务器和订阅服务器;
发布创建模块202,用于选择发布数据库,选择分发数据库,新建发布;
订阅创建模块203,用于选择新建的所述发布,选择订阅数据库,新建订阅;
存储模块204,用于保存所述发布和所述订阅的配置信息;
一键复制指令集建立模块205,用于建立与所述配置信息相关联的一键复制指令集。
在具体应用中,服务器设置模块201具体用于预先选择并配置好发布服务器、分发服务器和订阅服务器的配置信息。
在具体应用中,发布创建模块202,具体用于选择执行所述新建发布操作的发布服务器,然后在所选择的发布服务器中选择需要发布的数据库或者数据库中的全部或部分数据;选择所述新建发布操作的分发服务器,然后在所选择的分发服务器中选择默认的分发数据库,若不存在默认的分发数据库,则自动创建默认的分发数据库。
在具体应用中,新建发布的数量由用于自定义设置,用户可以新建一个或多个发布。
在具体应用中,订阅创建模块203,具体用于在新建的一个或多个发布中选择对某一个或多个发布进行订阅,选择了需要订阅的发布之后,选择用于同步所述发布服务器所发布的数据的订阅数据库,在相应的订阅服务器中对所述订阅数据库创建订阅。
在具体应用中,存储模块204,可以选用高速RAM存储器,也可以选用非易失性存储器(non-volatile memory),例如磁盘存储器。
在具体应用中,一键复制指令集建立模块205,还用于建立所述配置信息和所述一键复制指令集之间的映射关系。
在一实施例中,所述系统还包括:
增加模块,用于增加新的发布和新的订阅;
更新模块,用于根据所述新的发布和新的订阅更新所述配置信息;
修改模块,用于修改已经保存的所述发布和所述订阅的配置信息;
删除模块,用于删除已经保存的所述发布和所述订阅的配置信息。
通过增加、修改或删除已经预先设置好的配置信息,可以实现对发布和订阅的数据的更改,使用户可以根据需要新建新的发布和订阅,或者修改、删除已经创建的发布和订阅。
本发明所有实施例中的模块,可以通过通用集成电路,例如CPU(Central Processing Unit,中央处理器),或通过ASIC(Application Specific Integrated Circuit,专用集成电路)来实现。
本发明实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减。
本发明实施例系统中的模块可以根据实际需要进行合并、划分和删减。
本发明实施例系统中的模块的功能与方法中的步骤一一对应。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。