一种Sybase数据库跨平台迁移方法和系统的制作方法
【技术领域】
[0001]本发明涉及数据库迀移技术领域,尤指一种Sybase数据库跨平台迀移方法和系统。
【背景技术】
[0002]高端服务器承载着行业的核心应用,广泛应用在金融、电信、能源、交通等关键应用领域,其运行直接关系到社会、经济的正常运转。长期以来,由于缺乏高端服务器设计和制造能力,我国高端服务器市场一直为国外厂商把持,其中甲骨文长期占据20%以上的国内市场。在科技部“十一五”863计划的支持下,相关部门、科研单位积极配合,浪潮已成功研制了 32路高端容错计算机系统,可用度达到99.999%,系统联机事务处理能力达到世界先进水平。为提高信息化建设重大装备的自主可控性,越来越多的信息系统倾向于使用自主产品。因此,在未来较长的一段时间内,国内的IT系统建设面临着国产化的变革,具体的信息系统建设与实施层面,体现为越来越多的跨平台迀移工作,其中有相当的迀移工作是从HP-UX平台至浪潮K-UX平台。
[0003]数据库是IT系统的核心软件,数据库迀移也是IT系统建设中极为重要的一部分。由于异构服务器平台的CPU指令集差异、操作系统差异以及编译器差异,使得数据库跨平台迀移难度高,工作量大。如何降低迀移难度,减少工作量,是跨平台数据库迀移需要解决的关键问题。
【发明内容】
[0004]为了解决上述技术问题,本发明提供了一种Sybase数据库跨平台迀移方法和系统,能够从可扩充处理器架构(SPARC,Scalable Processor ARChitecture)平台向K-UX平台迀移的过程中,降低迀移难度并减少工作量。
[0005]为了达到本发明目的,本发明提供了一种Sybase数据库跨平台迀移方法,该方法应用于通过以太网建立连接源端与目标端,且源端和目标端分别与Sybase数据库交互;该方法包括:当需要进行数据库迀移时,源端收集源端平台信息和数据库信息,目标端收集目标端平台信息;源端接收来自所述目标端的目标端平台信息,对比目标端平台信息和源端平台信息,生成源端和目标端的平台差异分析表;源端根据平台差异分析表和源端数据库信息,采用预先设置的迀移算法生成迀移向导,根据迀移向导进行数据迀移;目标端收集目标端恢复的数据库信息,对比源端数据库信息与目标端恢复的数据库信息,生成源端数据库和目标端数据库的一致性检查表,根据一致性检查表确定源端数据库和目标端数据库一致,则Sybase数据库跨平台迀移完成。
[0006]本发明还提供了一种Sybase数据库跨平台迀移系统,包括:源端与目标端,通过以太网实现源端与目标端通信,且源端和目标端分别与Sybase数据库交互;所述源端,用于收集源端平台信息和数据库信息;接收来自目标端的目标端平台信息,对比目标端平台信息和源端平台信息,生成源端和目标端的平台差异分析表;根据平台差异分析表和源端数据库信息,采用预先设置的迀移算法生成迀移向导,根据迀移向导进行数据迀移;所述目标端,用于收集目标端平台信息和恢复的数据库信息,对比源端数据库信息与目标端恢复的数据库信息,生成源端数据库和目标端数据库的一致性检查表,根据一致性检查表确定源端数据库和目标端数据库一致,则Sybase数据库跨平台迀移完成。
[0007]在本发明的Sybase数据库跨平台迀移方法和系统,能够大大降低Sybase数据库从SPARC平台向K-UX平台迀移的工作量,降低迀移难度。
[0008]本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
【附图说明】
[0009]附图用来提供对本发明技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本发明的技术方案,并不构成对本发明技术方案的限制。
[0010]图1是本发明的一种实施例中Sybase数据库跨平台迀移方法的流程示意图。
[0011]图2是本发明的一种实施例中Sybase数据库跨平台迀移系统的架构示意图。
【具体实施方式】
[0012]为使本发明的目的、技术方案和优点更加清楚明白,下文中将结合附图对本发明的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
[0013]在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
[0014]Sybase数据库,是一种关系型数据库系统,Sybase数据库主要由三部分组成:(I)进行数据库管理和维护的一个联机的关系数据库管理系统Sybase SQL Server ; (2)支持数据库应用系统的建立与开发的一组前端工具Sybase SQL Toolset ; (3)可把异构环境下其它厂商的应用软件和任何类型的数据连接在一起的接口 Sybase Open Client/OpenServer0
[0015]SPARC平台,是RISC微处理器架构之一,为各种企业应用程序提供创世界纪录的性能,只需大型机成本的一小部分,即可获得无与伦比的任务关键型可靠性,唯一包含片上加密和Sybase Solaris安全框架的平台与Sybase数据库、业务应用程序、中间件软件和Sybase优化的解决方案完全集成,并利用全面、内置的零成本虚拟化功能提高系统利用率。
[0016]K-UX平台,是浪潮自主研制的一种UNIX操作系统。
[0017]图1是本发明的一种实施例中Sybase数据库跨平台迀移方法的流程示意图。在本发明的具体实施中,Sybase数据库需要从SPARC平台向K-UX平台迀移,其中设定SPARC平台为源端,K-UX平台为目标端,通过以太网实现源端与目标端通信。
[0018]如图1所示,本发明的Sybase数据库跨平台迀移方法,包括:
[0019]步骤11,源端与目标端启动后通过以太网建立连接,且源端和目标端分别与Sybase数据库交互。
[0020]在本步骤中,源端与目标端架构基于JAVA实现,以实现跨平台特性,源端安装于其他服务器平台,例如SPARC平台,目标端安装于K-UX平台,源端与目标端通过以太网通信,且源端和目标端分别与Sybase数据库交互。
[0021]步骤12,当需要进行数据库迀移时,源端收集源端平台信息和数据库信息,目标端收集目标端平台信息。
[0022]在本步骤中,源端平台信息包括处理器架构信息、指令集信息、字节序信息、编译器信息、操作系统信息、系统变量信息及文件系统信息;
[0023]数据库信息包括数据库版本信息、数据量信息、表信息、索引信息、存储过程信息、用户信息及日志信息;
[0024]目标端平台信息包括处理器架构信息、指令集信息、字节序信息、编译器信息、操作系统信息、系统变量信息及文件系统信息。
[0025]步骤13,源端接收来自所述目标端的目标端平台信息,对比目标端平台信息和源端平台信息,生成源端和目标端的平台差异分析表。
[0026]在本步骤中,如何进行对比为本领域技术人员所熟知,故在此不赘述。
[0027]步骤14,源端根据平台差异分析表和源端数据库信息,采用预先设置的迀移算法生成迀移向导,根据迀移向导进行数据迀移。
[0028]在本步骤中,源端根据平台差异分析表和源端数据库信息,采用迀移算法生成迀移向导;此外,如果有人工干预信息,该人工干预信息可以是制定源端和目标端的平台差异分析表的格式或者并制定每条差异对应的迀移方案建议等,因此,还可以根据平台差异分析表、源端数据库信息和人工干预信息,采用迀移算法生成迀移向导。
[0029]步骤15,目标端对比源端数据库信息与目标端恢复的数据库信息,生成源端数据库和目标端数据库的一致性检查表,根据一致性检查表确定源端数据库和目标端数据库一致,则Sybase数据库跨平台迀移完成。
[0030]在本步骤中,根据迀移向导,根据迀移算法执行Sybase数据库恢复操作。
[0031 ]目标端收集恢复的数据库信息,恢复的数据库信息,包括数据库
版本信息、数据量信息、表信息、索引信息、存储过程信息、用户信息及日志信息。
[0032]对比源端数据库信息与目标端恢复的数据库信息,生成源端数据库和目标端数据库的一致性检查表,如果根据一致性检查表确定源端数据库和目标端数据库一致,则迀移完成,其中如何进行对比为本领域技术人员所熟知,故在此不赘述。
[0033]在本发明中,迀移算法包括迀移向导生成算法和备份恢复算法。
[0034]采用生成迀移向导算法,具体为:
[0035]A、制定源端和目标端的平台差异分析表的格式;
[0036]B、制定每条差异对应的迀移方案;
[0037]C、根据源端数据库版本确定迀移方式;
[0038]具体地,若源端数据库版本号不高于12.5.3,则提示用户2种选择:选择一,先升级源端数据库版本至12.5.3以上,再进行迀移;选择二,先将源端数据库数据迀移至同平台同版本的中间数据库上,然后将中间数据库升级至12.5.3以上,再从中间库迀移数据至目标端数据库。
[0039]D、根据迀移数据量制定不同的数据库转储文件传输方式;
[0040]具体地,转储文件小于100G,使用千兆网传输;转储文件100G?4T,使用万兆网传输;转储文件大于4T,使用直接挂载磁盘阵列方式进行转移。
[0041 ] E、预估迀移时间,包括数据库备份时间、转储文件传输时间、数据库恢复时间;
[0042]具体地,根据表信息、用户信息、存储过程信息预估迀移时间。
[0043]F、根据A?E中的信息生成迀移向导。
[0044]采用备份恢复算法,具体为:
[0045]A、执行源端用户数据库一致性检查,包括确认数据页和索引页的完整性,检查数据库内的页分配情况,检查数据库内系统表的一致性,记录总的数据检查的时间,反馈检查信息;
[0046]B、执行源端系统数据库一致性检查,确认master库与sybsystemprocs库的完整性及一致性,反馈检查结果;
[0047]C、检查源端数据库用户登陆状态,反馈检查结果,提示确保无用户登录;
[0048]D、执行源端数据库强制写磁盘,使得该时间点的全部脏数据以及日志均写到磁盘中,反馈结果;
[0049]E、截断源端数据库日志,反馈结果;
[0050]F、迀出源端数据库用户信息,反馈迀出结果;
[0051]G、备份源端数据库,生成转储文件,反馈结果;
[0052]H、提示用户传输转储文件;
[0053]1、确认转储文件传输完毕;
[0054]J、提示用户在目标端重建用户库;
[0055]K、确认目标端重建用户库完毕;
[0056]L、检查目标端用户库,并与源端数据库信息进行对比,保证源端与目标端数据库具有相同的设备数量,每个设备具有相同的容量和类型,并且确保加入数据库中的先后顺序和大小必须一致,反馈对比结果;
[0057]M、迀移用户信息至目标数据库,反馈迀移结果;
[0058]N、在目标数据库执行恢复操作,反馈回复结果;
[0059]0、在目标数据库执行一致性检查,确认数据页和索引页的完整,检查数据库内的分配错误,检查数据库内系统表的一致性,反馈检查结果;
[0060]P、收集已恢复的目标数据库信息,包括数据库版本信息、数据量信息、表信息、索引信息、存储过程信息、用户信息、日志信息,与源端数据库信息一一对比,生成源端数据库和目标端数据库一致性检查表,并根据一致性检查表进行检查,确定源端数据库和目标端数据库一致,则Sybase数据库跨平台迀移完成。
[0061]图2是本发明的一种实施例中Sybase数据库跨平台迀移系统的架构示意图。如图2所示,该Sybase数据库跨平台迀移系统包括源端与目标端,其中SPARC平台为源端,K-UX平台为目标端,通过以太网实现源端与目标端通信,且源端和目标端分别与Sybase数据库交互。
[0062]源端包含源端通信模块1、源端分析模块2、源端备份模块3与源端控制台模块4,其中源端控制台模块4的第一通信端口与源端通信模块I的第一通信端口相连,源端控制台模块4的第二通信端口与源端分析模块2的第一通信端口相连,源端控制台模块4的第三通信端口与备份模块3相连,源端通信模块I的第二通信端口与源端分析模块2的第二通信端口相连,源端通信模块I的第三通信端口与源端备份模块3的第二通信端口相连,源端通信模块I的第四通信端口与目标端通信模块5的第四通信端口通过以太网相连。
[0063]目标端包含目标端通信模块5、目标端分析模块6、目标端恢复模块7与目标端控制台模块8,其中目标端控制台模块8的第一通信端口与目标端通信模块5的第一通信端口相连,目标端控制台模块8的第二通信端口与目标端分析模块6的第一通信端口相连,目标端控制台模块8的第三通信端口与目标端恢复模块7相连,目标端通信模块5的第二通信端口与目标端分析模块6的第二通信端口相连,目标端通信模块5的第三通信端口与目标端恢复模块7的第二通信端口相连,目标端的通信模块的5第四通信端口与源端通信模块I的第四端口通过以太网相连。
[0064]源端通信模块I通过以太网实现源端与目标端通信,源端通信模块I将源端分析模块2、源端备份模块3、源端控制台模块4发送的信息通过以太网发送至目标端通信模块5。
[0065]源端分析模块2收集源端平台信息与数据库信息,源端平台信息包括处理器架构信息、指令集信息、字节序信息、编译器信息、操作系统信息、系统变量信息及文件系统信息,数据库信息包括数据库版本信息、数据量信息、表信息、索引信息、存储过程信息、用户信息及日志信息。
[0066]此外,源端分析模块2通过源端通信模块I接收目标端分析模块6收集的目标端平台信息,对比源端平台信息与目标端平台信息,得出源端和目标端德平台差异分析表输出至源端控制台模块4。源端分析模块根据平台差异分析表、收集的源端数据库信息以及迀移算法,制定迀移方案输出至源端控制台模块4,根据源端控制台模块4反馈的人工干预信息,生成迀移向导指导迀移。源端分析模块2将源端平台信息、源端数据库信息、平台差异分析表、迀移方案、迀移向导发送至源端通信模块I。
[0067]源端备份模块3根据迀移向导、迀移算法及控制台发送的人工干预执行源端Sybase数据库备份操作,并反馈每步操作的结果至源端控制台模块4与源端通信模块I。
[0068]源端控制台模块4用于实现人机交互。
[0069]目标端通信模块5通过以太网实现目标端与源端通信,目标端通信模块5将目标端分析模块6、目标端恢复模块7、目标端控制台模块8发送的信息通过以太网发送至源端通信模块I。
[0070]目标端分析模块6收集目标端平台信息与恢复的数据库信息,平台信息包括处理器架构信息、指令集信息、字节序信息、编译器信息、操作系统信息、系统变量信息及文件系统信息,恢复的数据库信息包括数据库版本信息、数据量信息、表信息、索引信息、存储过程信息、用户信息、日志信息。
[0071]此外,目标端分析模块6通过目标端通信模块5接收源端分析模块2收集的源端数据库信息,对比源端数据库信息与目标端以恢复的数据库信息,得出源端数据库、目标端数据库一致性检查表输出至目标端控制台模块8。目标端分析模块6将目标端平台信息、目标端数据库信息、数据库一致性检查表、发送至目标端通信模块5。
[0072]目标端恢复模块7根据迀移向导、迀移算法及控制台发送的人工干预执行源端Sybase数据库恢复操作,并反馈每步操作的结果至目标端控制台模块8与目标端通信模块 5。
[0073]目标端控制台模块8用于实现人机交互。
[0074]源端控制台模块4与目标端控制台模块8通过源端通信模块I和目标端通信模块5互通信息,实现在源端和目标端均可对所述数据迀移工具进行控制。
[0075]迁移算法包括迁移向导生成算法和备份恢复算法,其中,
[0076]采用移向导生成算法,具体为:
[0077]Α、制定源端和目标端的平台差异分析表的格式;
[0078]B、制定每条差异对应的迀移方案;
[0079]C、根据源端数据库版本确定迀移方式;
[0080]具体地,若源端数据库版本号
不高于12.5.3,则提示用户2种选择:选择一,先升级源端数据库版本至12.5.3以上,再进行迀移;选择二,先将源端数据库数据迀移至同平台同版本的中间数据库上,然后将中间数据库升级至12.5.3以上,再从中间库迀移数据至目标端数据库。
[0081]D、根据迀移数据量制定不同的数据库转储文件传输方式;
[0082]具体地,转储文件小于100G,使用千兆网传输;转储文件100G?4Τ,使用万兆网传输;转储文件大于4Τ,使用直接挂载磁盘阵列方式进行转移。
[0083]E、预估迀移时间,包括数据库备份时间、转储文件传输时间、数据库恢复时间;
[0084]具体地,根据表信息、用户信息、存储过程信息预估迀移时间。
[0085]F、源端分析模块2根据A?E中的信息生成迀移向导;
[0086]具体地,此阶段主要是根据迀移向导进行数据迀移备份。源端分析模块2根据A?E中的信息生成迀移方案建议,并将迀移方案建议发送至源端控制台模块4和源端通信模块1,根据对迀移方案建议的决策,生成迀移向导。
[0087]采用备份恢复算法,具体为:
[0088]Α、目标端备份模块3执行源端用户数据库一致性检查,包括确认数据页和索引页的完整性,检查数据库内的页分配情况,检查数据库内系统表的一致性,记录总的数据检查的时间,反馈检查信息;
[0089]B、目标端备份模块3执行源端系统数据库一致性检查,确认master库与sybsystemprocs库的完整性及一致性,反馈检查结果;
[0090]C、目标端备份模块3检查源端数据库用户登陆状态,反馈检查结果,提示确保无用户登录;
[0091]D、目标端备份模块3执行源端数据库强制写磁盘,使得该时间点的全部脏数据以及日志均写到磁盘中,反馈结果;
[0092]E、目标端备份模块3截断源端数据库日志,反馈结果;
[0093]F、目标端备份模块3迀出源端数据库用户信息,反馈迀出结果;
[0094]G、目标端备份模块3备份源端数据库,生成转储文件,反馈结果;
[0095]H、提示用户传输转储文件;
[0096]1、用户通过源端控制台模块4或目标端控制台模块8确认转储文件传输完毕;
[0097]J、目标端恢复模块7提示用户在目标端重建用户库;
[0098]K、用户通过源端控制台模块4或目标端控制台模块8确认目标端重建用户库完毕;
[0099]L、目标端分析模块6检查目标端用户库,并于源端分析模块2收集的源端数据库信息进行对比,保证源端与目标端数据库具有相同的设备数量,每个设备具有相同的容量和类型,并且确保加入数据库中的先后顺序和大小必须一致,反馈对比结果;
[0100]M、目标端恢复模块7迀移用户信息至目标数据库,反馈迀移结果;
[0101]N、目标端恢复模块7在目标数据库执行恢复操作,反馈回复结果;
[0102]O、目标端恢复模块7在目标数据库执行一致性检查,确认数据页和索引页的完整,检查数据库内的分配错误,检查数据库内系统表的一致性,反馈检查结果;
[0103]P、目标端分析模块6收集已恢复的目标数据库信息,包括数据库版本信息、数据量信息、表信息、索引信息、存储过程信息、用户信息、日志信息,与源端分析模块2收集的源端数据库信息--对比,生成源端数据库和目标端数据库一致性检查表,并将一致性检查表发送至目标端控制台模块8进行检查,将一致性检查表发送至目标端通信模块5以使用户在源端控制台模块4同样能够得到一致性信息;目标端控制台模块8根据一致性检查表进行检查,确定源端数据库和目标端数据库一致,则Sybase数据库跨平台迀移完成。
[0104]在本发明的Sybase数据库跨平台迀移方法和系统,能够大大降低Sybase数据库从SPARC平台向K-UX平台迀移的工作量,降低迀移难度。
[0105]虽然本发明所揭露的实施方式如上,但所述的内容仅为便于理解本发明而采用的实施方式,并非用以限定本发明。任何本发明所属领域内的技术人员,在不脱离本发明所揭露的精神和范围的前提下,可以在实施的形式及细节上进行任何的修改与变化,但本发明的专利保护范围,仍须以所附的权利要求书所界定的范围为准。
【主权项】
1.一种Sybase数据库跨平台迀移方法,其特征在于,该方法应用于通过以太网建立连接源端与目标端,且源端和目标端分别与Sybase数据库交互; 该方法包括: 当需要进行数据库迀移时,源端收集源端平台信息和数据库信息,目标端收集目标端平台信息; 源端接收来自所述目标端的目标端平台信息,对比目标端平台信息和源端平台信息,生成源端和目标端的平台差异分析表; 源端根据平台差异分析表和源端数据库信息,采用预先设置的迀移算法生成迀移向导,根据迀移向导进行数据迀移; 目标端收集目标端恢复的数据库信息,对比源端数据库信息与目标端恢复的数据库信息,生成源端数据库和目标端数据库的一致性检查表,根据一致性检查表确定源端数据库和目标端数据库一致,则Sybase数据库跨平台迀移完成。2.根据权利要求1所述的方法,其特征在于,所述源端与目标端架构基于JAVA实现,源端安装于SPARC平台,目标端安装于K-UX平台。3. 根据权利要求1所述的方法,其特征在于,所述源端平台信息包括处理器架构信息、指令集信息、字节序信息、编译器信息、操作系统信息、系统变量信息及文件系统信息; 所述数据库信息包括数据库版本信息、数据量信息、表信息、索引信息、存储过程信息、用户信息及日志信息; 所述目标端平台信息包括处理器架构信息、指令集信息、字节序信息、编译器信息、操作系统信息、系统变量信息及文件系统信息; 所述恢复的数据库信息,包括数据库版本信息、数据量信息、表信息、索引信息、存储过程信息、用户信息及日志信息。4.根据权利要求1?3中任一项所述的方法,其特征在于,所述迀移算法包括迀移向导生成算法和备份恢复算法。5.根据权利要求4所述的方法,其特征在于,所述迀移向导生成算法,具体为: A、制定源端和目标端的平台差异分析表的格式; B、制定每条差异对应的迀移方案; C、根据源端数据库版本确定迀移方式; D、根据迀移数据量制定不同的数据库转储文件传输方式:如果转储文件小于100G,使用千兆网传输;如果转储文件10G?4T,使用万兆网传输;如果转储文件大于4T,使用直接挂载磁盘阵列方式进行转移; E、预估迀移时间,包括数据库备份时间、转储文件传输时间、数据库恢复时间; F、根据A?E中的信息生成迀移向导。6.根据权利要求4所述的方法,其特征在于,所述备份恢复算法,具体为: A、执行源端用户数据库一致性检查,包括确认数据页和索引页的完整性,检查数据库内的页分配情况,检查数据库内系统表的一致性,记录总的数据检查的时间,反馈检查信息; B、执行源端系统数据库一致性检查,确认master库与sybsystemprocs库的完整性及一致性,反馈检查结果; C、检查源端数据库用户登陆状态,反馈检查结果,提示确保无用户登录; D、执行源端数据库强制写磁盘,使得该时间点的全部脏数据以及日志均写到磁盘中,反馈结果; E、截断源端数据库日志,反馈结果; F、迀出源端数据库用户信息,反馈迀出结果; G、备份源端数据库,生成转储文件,反馈结果; H、提示用户传输转储文件; I、确认转储文件传输完毕; J、提示用户在目标端重建用户库; K、确认目标端重建用户库完毕; L、检查目标端用户库,并与源端数据库信息进行对比,保证源端与目标端数据库具有相同的设备数量,每个设备具有相同的容量和类型,并且确保加入数据库中的先后顺序和大小必须一致,反馈对比结果; M、迀移用户信息至目标数据库,反馈迀移结果; N、在目标数据库执行恢复操作,反馈回复结果; .O、在目标数据库执行一致性检查,确认数据页和索引页的完整,检查数据库内的分配错误,检查数据库内系统表的一致性,反馈检查结果; P、收集已恢复的目标数据库信息,包括数据库版本信息、数据量信息、表信息、索引信息、存储过程信息、用户信息、日志信息,与源端数据库信息一一对比,生成源端数据库和目标端数据库一致性检查表,并根据一致性检查表进行检查,确定源端数据库和目标端数据库一致,则Sybase数据库跨平台迀移完成。7.—种Sybase数据库跨平台迀移系统,其特
征在于,包括源端与目标端,通过以太网实现源端与目标端通信,且源端和目标端分别与Sybase数据库交互; 所述源端,用于收集源端平台信息和数据库信息;接收来自目标端的目标端平台信息,对比目标端平台信息和源端平台信息,生成源端和目标端的平台差异分析表;根据平台差异分析表和源端数据库信息,采用预先设置的迀移算法生成迀移向导,根据迀移向导进行数据迀移; 所述目标端,用于收集目标端平台信息和恢复的数据库信息,对比源端数据库信息与目标端恢复的数据库信息,生成源端数据库和目标端数据库的一致性检查表,根据一致性检查表确定源端数据库和目标端数据库一致,则Sybase数据库跨平台迀移完成。8.根据权利要求7所述的系统,其特征在于,所述源端与目标端架构基于JAVA实现,源端安装于SPARC平台,目标端安装于K-UX平台;9.根据权利要求7所述的系统,其特征在于,所述源端包括:源端通信模块、源端分析模块、源端备份模块与源端控制台模块,其中, 源端控制台模块的第一通信端口与源端通信模块的第一通信端口相连,源端控制台模块的第二通信端口与源端分析模块的第一通信端口相连,源端控制台模块的第三通信端口与备份模块相连,源端通信模块的第二通信端口与源端分析模块的第二通信端口相连,源端通信模块的第三通信端口与源端备份模块的第二通信端口相连,源端通信模块的第四通信端口与目标端通信模块的第四通信端口通过以太网相连。10.根据权利要求9所述的系统,其特征在于,所述目标端包括:目标端通信模块、目标端分析模块、目标端恢复模块与目标端控制台模块,其中, 目标端控制台模块的第一通信端口与目标端通信模块的第一通信端口相连,目标端控制台模块的第二通信端口与目标端分析模块的第一通信端口相连,目标端控制台模块的第三通信端口与目标端恢复模块相连,目标端通信模块的第二通信端口与目标端分析模块的第二通信端口相连,目标端通信模块的第三通信端口与目标端恢复模块的第二通信端口相连,目标端的通信模块的第四通信端口与源端通信模块的第四端口通过以太网相连。11.根据权利要求10所述的系统,其特征在于,所述源端通信模块通过以太网实现源端与目标端通信,源端通信模块将源端分析模块、源端备份模块、源端控制台模块发送的信息通过以太网发送至目标端通信模块; 所述源端分析模块收集源端平台信息与数据库信息,源端平台信息包括处理器架构信息、指令集信息、字节序信息、编译器信息、操作系统信息、系统变量信息及文件系统信息;数据库信息包括数据库版本信息、数据量信息、表信息、索引信息、存储过程信息、用户信息及日志信息;源端分析模块通过源端通信模块接收目标端分析模块收集的目标端平台信息,对比源端平台信息与目标端平台信息,得出源端和目标端德平台差异分析表输出至源端控制台模块;根据平台差异分析表、收集的源端数据库信息以及迀移算法,制定迀移方案输出至源端控制台模块,根据源端控制台模块反馈的人工干预信息,生成迀移向导指导迀移;将源端平台信息、源端数据库信息、平台差异分析表、迀移方案、迀移向导发送至源端通信模块; 所述源端备份模块根据迀移向导、迀移算法及控制台发送的人工干预执行源端Sybase数据库备份操作,并反馈每步操作的结果至源端控制台模块与源端通信模块。 所述源端控制台模块用于实现人机交互。12.根据权利要求11所述的系统,其特征在于,所述目标端通信模块通过以太网实现目标端与源端通信,目标端通信模块将目标端分析模块、目标端恢复模块、目标端控制台模块发送的信息通过以太网发送至源端通信模块; 所述目标端分析模块收集目标端平台信息与恢复的数据库信息,目标端平台信息包括处理器架构信息、指令集信息、字节序信息、编译器信息、操作系统信息、系统变量信息及文件系统信息;恢复的数据库信息包括数据库版本信息、数据量信息、表信息、索引信息、存储过程信息、用户信息及日志信息;目标端分析模块通过目标端通信模块接收源端分析模块收集的源端数据库信息,对比源端数据库信息与目标端以恢复的数据库信息,得出源端数据库、目标端数据库一致性检查表输出至目标端控制台模块;将目标端平台信息、目标端数据库信息、数据库一致性检查表、发送至目标端通信模块; 所述目标端恢复模块根据迀移向导、迀移算法及控制台发送的人工干预执行源端Sybase数据库恢复操作,并反馈每步操作的结果至目标端控制台模块与目标端通信模块; 目标端控制台模块用于实现人机交互。13.根据权利要求7?12中任一项所述的系统,其特征在于,所述迀移算法包括迀移向导生成算法和备份恢复算法。14.根据权利要求13所述的系统,其特征在于,所述迀移向导生成算法,具体为: A、制定源端和目标端的平台差异分析表的格式; B、制定每条差异对应的迀移方案; C、根据源端数据库版本确定迀移方式; D、根据迀移数据量制定不同的数据库转储文件传输方式:如果转储文件小于100G,使用千兆网传输;如果转储文件10G?4T,使用万兆网传输;如果转储文件大于4T,使用直接挂载磁盘阵列方式进行转移; E、预估迀移时间,包括数据库备份时间、转储文件传输时间、数据库恢复时间; F、源端分析模块根据A?E中的信息生成迀移方案建议,并将迀移方案建议发送至源端控制台模块和源端通信模块,根据对迀移方案建议的决策,生成迀移向导。15.根据权利要求13所述的系统,其特征在于,所述备份恢复算法,具体为: A、目标端备份模块执行源端用户数据库一致性检查,包括确认数据页和索引页的完整性,检查数据库内的页分配情况,检查数据库内系统表的一致性,记录总的数据检查的时间,反馈检查信息; B、目标端备份模块执行源端系统数据库一致性检查,确认master库与sybsystemprocs库的完整性及一致性,反馈检查结果; C、目标端备份模块检查源端数据库用户登陆状态,反馈检查结果,提示确保无用户登录; D、目标端备份模块执行源端数据库强制写磁盘,使得该时间点的全部脏数据以及日志均写到磁盘中,反馈结果; E、目标端备份模块截断源端数据库日志,反馈结果; F、目标端备份模块迀出源端数据库用户信息,反馈迀出结果; G、目标端备份模块备份源端数据库,生成转储文件,反馈结果; H、提示用户传输转储文件; I、用户通过源端控制台模块或目标端控制台模块确认转储文件传输完毕; J、目标端恢复模块提示用户在目标端重建用户库; K、用户通过源端控制台模块或目标端控制台模块确认目标端重建用户库完毕; L、目标端分析模块检查目标端用户库,并于源端分析模块收集的源端数据库信息进行对比,保证源端与目标端数据库具有相同的设备数量,每个设备具有相同的容量和类型,并且确保加入数据库中的先后顺序和大小必须一致,反馈对比结果; M、目标端恢复模块迀移用户信息至目标数据库,反馈迀移结果; N、目标端恢复模块在目标数据库执行恢复操作,反馈回复结果; O、目标端恢复模块在目标数据库执行一致性检查,确认数据页和索引页的完整,检查数据库内的分配错误,检查数据库内系统表的一致性,反馈检查结果; P、目标端分析模块收集已恢复的目标数据库信息,包括数据库版本信息、数据量信息、表信息、索引信息、存储过程信息、用户信息、日志信息,与源端分析模块收集的源端数据库信息--对比,生成源端数据库和目标端数据库一致性检查表,并将一致性检查表发送至目标端控制台模块进行检查,将一致性检查表发送至目标端通信模块以使用户在源端控制台模块能够得到一致性信息;目标端控制台模块根据一致性检查表进行检查,确定源端数据库和目标端数据库一致,则Sybase数据库跨平台迀移完成。
【专利摘要】本发明公开了一种Sybase数据库跨平台迁移方法和系统,包括:源端收集源端平台信息和数据库信息,目标端收集目标端平台信息;源端对比目标端平台信息和源端平台信息,生成源端和目标端的平台差异分析表;源端根据平台差异分析表和源端数据库信息,采用迁移算法生成迁移向导,根据迁移向导进行数据迁移;目标端收集目标端恢复的数据库信息,对比源端数据库信息与目标端恢复的数据库信息,生成一致性检查表,根据一致性检查表确定源端数据库和目标端数据库一致,则迁移完成。本发明能够降低迁移的工作量,降低迁移难度。
【IPC分类】G06F17/30
【公开号】CN104899332
【申请号】CN201510355377
【发明人】康玉琢
【申请人】浪潮(北京)电子信息产业有限公司
【公开日】2015年9月9日
【申请日】2015年6月24日