一种数据库数据迁移系统的制作方法

文档序号:9865508阅读:402来源:国知局
一种数据库数据迁移系统的制作方法【
技术领域
】[0001]本发明属于数据库开发
技术领域
,尤其涉及一种数据库数据迁移系统。【
背景技术
】[0002]现在很多企业信息管理系统都是基于数据库设计与开发的。这样,对与这些企业信息管理系统的升级与维护都会需要与数据库打交道,而数据库的结构是很难手工维护的,所以一般管理系统的升级就会很困难和痛苦。[0003]大多数组织都使用多种格式和多个位置来存储数据。为了支持决策、改善系统性能或对现有系统进行升级,经常必须将数据从一个数据存储位置移动到另一个存储位置。这就是数据迁移工具(DataTransformat1nService,简称:DTS)产生的技术背景。[0004]对于大规模的系统迁移,常用的数据迁移工具是MicrosoftSQLServer的数据转换服务(DTS)等,该工具可以从不同的源将数据抽取、转换和合并到一个或多个目标位置。对于小规模的系统迁移、数据迁移及系统升级应用,应用厂商大多采用手动录入、手动复制粘贴、导出\导入TXT\CSV文件、导出\导入SQL数据文件来对应。[0005]MicrosoftSQLServer、0racle等专业的DTS工具,适用于大规模、复杂的数据迁移项目,这类DTS软件的采购费用较高,不适合用于平台产品的升级和数据迁移。手动录入、手动复制粘贴、导出\导入TXT\CSV文件、导出\导入SQL数据文件等方式的数据迁移适合一次性、并且小规模的数据迁移,不适合平台产品的升级和数据迁移。本发明因此而来。【
发明内容】[0006]针对现有技术中所存在的问题,本发明的目的是提供一种数据库数据迁移系统,解决了管理系统数据库的更新与迁移的难题,更重视业务方面的数据维护。[0007]—种数据库数据迁移系统,其特征在于所述系统包括设置在源数据库端的数据库查看模块、对数据库数据内容变更情况进行监听的数据库监听模块和对数据库的结构和数据记录进行复制,形成SQL文件的数据库备份模块;所述数据库查看模块对源数据库的结构和数据进行查看后,数据库备份模块将相应的数据和数据库结构根据SQL命令规范形成SQL文件,由数据库备份模块输出备份;当数据库监听模块监听到数据库数据内容变更时,启动数据库备份模块对变更内容进行备份,并替换相应SQL文件中内容。[0008]优选的,所述系统还包括将数据库备份模块备份出的SQL文件进行打包形成可执行文件的打包模块;当数据库备份模块备份完毕时,启动所述打包模块进行SQL文件的打包。[0009]优选的,所述系统还包括用于根据打包形成的可执行文件进行更新或创建目标数据库的更新模块,所述更新模块设置有配置文件,所述配置文件内设置数据库结构或数据库数据记录的更新次序。[0010]本发明可以将平台数据库对象的变更情况进行记录,针对不同类型的数据库可以生成更新DDL语句,系统升级时该DDL语句与所做的WEB升级程序可以一起打包、执行,通过使用DTS工具,可以大幅减少系统升级的工作量,并且可以有效保证升级过程的一致性和正确性。[0011]本发明可以保证同一个项目的数据库,在不同时候的数据库变化记录下来,动态生成相关的DDL语句,由工具根据这些语句执行以更新数据库。本发明通过动态生成业务逻辑SQL语句、免干扰的自动更新程序;并将所有更新文件都集中生成一个独立的更新包;更新动作只需要一个更新包执行即可。[0012]本发明可以基于业务的DDL语句自动生成。在开发阶段,本系统可以自动记录平台数据库中表结构的变更、存储过程、视图等系统对象的变更、及表单和系统数据的变更,并根据MicrosoftSQLServer、Oracle等不同的数据库类型,自动生成对应的DDL更新语句、系统数据更新语句和表单更新语句。[0013]本发明可以基于业务的新旧数据的自动更新处理。更新包升级时,可以根据表单等数据的版本号,自动识别对象版本的新旧,对旧版本的文件进行更新。[0014]本发明可以自解压包与更新程序。更新包升级时,可以将更新包进行自动解压缩并执行升级。本发明自动记录平台数据库的对象变更,根据不同的数据库类型,生成对应的DDL变更语句;免干扰的自动更新程序;把所有更新DDL文件、数据文件、表单、程序文件等都集中生成一个独立的更新包;更新动作只需要一个更新包执行即可。[0015]与现有技术相比,本发明的有益效果为:将各种技术实现细节和调用的结束细节对用户屏蔽,让用户可以通过统一的方式调用这些后台技术;提供了简单直接调用SQL语句的方法;提高了平台类软件的开发效率;降低了技术实现的难度;同时,降低了业务开发人员的学习门槛。该系统通过数据库备份模块的设置,通过更新模块执行使数据库的迁移工作方便易行。【具体实施方式】[0016]以下结合具体实施例对上述方案做进一步说明。应理解,这些实施例是用于说明本发明而不限于限制本发明的范围。实施例中采用的实施条件可以根据具体厂家的条件做进一步调整,未注明的实施条件通常为常规使用的条件。[0017]实施例[0018]数据库数据迁移系统该系统包括设置在源数据库端的数据库查看模块、对数据库数据内容变更情况进行监听的数据库监听模块、对数据库的结构和数据记录进行复制,形成SQL文件的数据库备份模块、将数据库备份模块备份出的SQL文件进行打包形成可执行文件的打包模块和用于根据打包形成的可执行文件进行更新或创建目标数据库的更新模块;所述数据库查看模块对源数据库的结构和数据进行查看后,数据库备份模块将相应的数据和数据库结构根据SQL命令规范形成SQL文件,由数据库备份模块输出备份;当数据库监听模块监听到数据库数据内容变更时,启动数据库备份模块对变更内容进行备份,并替换相应SQL文件中内容。[0019]当数据库备份模块备份完毕时,启动所述打包模块进行SQL文件的打包。所述更新模块设置有配置文件,所述配置文件内设置数据库结构或数据库数据记录的更新次序。[0022]以下进行详细描述数据库结构和内容的迁移过程。[0020](I)系统对象变更记录[0021]开发阶段,DTS工具自动记录表结构变更、系统数据变更、表单变更、视图、函数、和存储过程的变更,并将这些变更生不同类型数据库对应的更新脚本。[0022](2)系统对象的处理[0023]视图、函数、过程的变更,由UPD程序从开发数据库导出为SQL文件。[0024](3)业务表的处理[0025]UPD程序负责导出用户业务表的DDL语句和变更记录,并对DDL语句整理,做出更新规则;到生产数据库后,先重命名原表,再创建本业务表,并判断字段把原表的数据插入新表,如果新表导出的时候带有数据,再把新表的数据插入进来(该插入语句在导出的时候就准备好了判断的语法);处理完毕后,把重命名的旧表删除。[0026](4)系统表的处理[0027]目标系统:开发系统[0028]—***应用设计时系统表***—[0029]sys_apppage—菜单[0030]sys_spec—系统对象[0031]sys_wh_yb—显示格式树设置[0032]sys_column—字段[0033]sys_columndis—显不字段[0034]sys_landscep-设计时字段[0035]SYS_DEFAULTUI—默认主题显示风格设置[0036]sys_detialtable—关联表[0037]sys_re当前第1页1 2 
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1