CN102393860A - 数据库数据迁移系统 - Google Patents
数据库数据迁移系统 Download PDFInfo
- Publication number
- CN102393860A CN102393860A CN2011104002515A CN201110400251A CN102393860A CN 102393860 A CN102393860 A CN 102393860A CN 2011104002515 A CN2011104002515 A CN 2011104002515A CN 201110400251 A CN201110400251 A CN 201110400251A CN 102393860 A CN102393860 A CN 102393860A
- Authority
- CN
- China
- Prior art keywords
- database
- module
- data
- file
- backup
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种数据库数据迁移系统,其特征在于所述系统包括设置在源数据库端的数据库查看模块、对数据库数据内容变更情况进行监听的数据库监听模块和对数据库的结构和数据记录进行复制,形成
SQL
文件的数据库备份模块;所述数据库查看模块对源数据库的结构和数据进行查看后,数据库备份模块将相应的数据和数据库结构根据
SQL
命令规范形成
SQL
文件,由数据库备份模块输出备份;当数据库监听模块监听到数据库数据内容变更时,启动数据库备份模块对变更内容进行备份,并替换相应
SQL
文件中内容。本发明通过数据库备份模块的设置,通过更新模块执行使数据库的迁移工作方便易行。
Description
技术领域
本发明属于数据库开发技术领域,尤其涉及一种数据库数据迁移系统。
背景技术
现在很多企业信息管理系统都是基于数据库设计与开发的。这样,对与这些企业信息管理系统的升级与维护都会需要与数据库打交道,而数据库的结构是很难手工维护的,所以一般管理系统的升级就会很困难和痛苦。
大多数组织都使用多种格式和多个位置来存储数据。为了支持决策、改善系统性能或对现有系统进行升级,经常必须将数据从一个数据存储位置移动到另一个存储位置。这就是数据迁移工具(Data Transformation Service,简称:DTS)产生的技术背景。
对于大规模的系统迁移,常用的数据迁移工具是Microsoft SQL Server的数据转换服务(DTS)等,该工具可以从不同的源将数据抽取、转换和合并到一个或多个目标位置。对于小规模的系统迁移、数据迁移及系统升级应用,应用厂商大多采用手动录入、手动复制粘贴、导出\导入TXT\CSV文件、导出\导入SQL数据文件来对应。
Microsoft SQL Server、Oracle等专业的DTS工具,适用于大规模、复杂的数据迁移项目,这类DTS软件的采购费用较高,不适合用于平台产品的升级和数据迁移。手动录入、手动复制粘贴、导出\导入TXT\CSV文件、导出\导入SQL数据文件等方式的数据迁移适合一次性、并且小规模的数据迁移,不适合平台产品的升级和数据迁移。本发明因此而来。
发明内容
针对现有技术中所存在的问题,本发明的目的是提供一种数据库数据迁移系统,解决了管理系统数据库的更新与迁移的难题,更重视业务方面的数据维护。
一种数据库数据迁移系统,其特征在于所述系统包括设置在源数据库端的数据库查看模块、对数据库数据内容变更情况进行监听的数据库监听模块和对数据库的结构和数据记录进行复制,形成SQL文件的数据库备份模块;所述数据库查看模块对源数据库的结构和数据进行查看后,数据库备份模块将相应的数据和数据库结构根据SQL命令规范形成SQL文件,由数据库备份模块输出备份;当数据库监听模块监听到数据库数据内容变更时,启动数据库备份模块对变更内容进行备份,并替换相应SQL文件中内容。
优选的,所述系统还包括将数据库备份模块备份出的SQL文件进行打包形成可执行文件的打包模块;当数据库备份模块备份完毕时,启动所述打包模块进行SQL文件的打包。
优选的,所述系统还包括用于根据打包形成的可执行文件进行更新或创建目标数据库的更新模块,所述更新模块设置有配置文件,所述配置文件内设置数据库结构或数据库数据记录的更新次序。
本发明可以将平台数据库对象的变更情况进行记录,针对不同类型的数据库可以生成更新DDL语句,系统升级时该DDL语句与所做的WEB升级程序可以一起打包、执行,通过使用DTS工具,可以大幅减少系统升级的工作量,并且可以有效保证升级过程的一致性和正确性。
本发明可以保证同一个项目的数据库,在不同时候的数据库变化记录下来,动态生成相关的DDL语句,由工具根据这些语句执行以更新数据库。本发明通过动态生成业务逻辑SQL语句、免干扰的自动更新程序;并将所有更新文件都集中生成一个独立的更新包;更新动作只需要一个更新包执行即可。
本发明可以基于业务的DDL语句自动生成。在开发阶段,本系统可以自动记录平台数据库中表结构的变更、存储过程、视图等系统对象的变更、及表单和系统数据的变更,并根据Microsoft SQL Server、Oracle等不同的数据库类型,自动生成对应的DDL更新语句、系统数据更新语句和表单更新语句。
本发明可以基于业务的新旧数据的自动更新处理。更新包升级时,可以根据表单等数据的版本号,自动识别对象版本的新旧,对旧版本的文件进行更新。
本发明可以自解压包与更新程序。更新包升级时,可以将更新包进行自动解压缩并执行升级。本发明自动记录平台数据库的对象变更,根据不同的数据库类型,生成对应的DDL变更语句;免干扰的自动更新程序;把所有更新DDL文件、数据文件、表单、程序文件等都集中生成一个独立的更新包;更新动作只需要一个更新包执行即可。
与现有技术相比,本发明的有益效果为:将各种技术实现细节和调用的结束细节对用户屏蔽,让用户可以通过统一的方式调用这些后台技术;提供了简单直接调用SQL语句的方法;提高了平台类软件的开发效率;降低了技术实现的难度;同时,降低了业务开发人员的学习门槛。该系统通过数据库备份模块的设置,通过更新模块执行使数据库的迁移工作方便易行。
附图说明
下面结合附图及实施例对本发明作进一步描述:
图1为本发明实施例数据库数据迁移系统的数据迁移流程图。
具体实施方式
以下结合具体实施例对上述方案做进一步说明。应理解,这些实施例是用于说明本发明而不限于限制本发明的范围。实施例中采用的实施条件可以根据具体厂家的条件做进一步调整,未注明的实施条件通常为常规使用的条件。
实施例
如图1所示是数据库数据迁移系统的数据迁移流程图,该系统包括设置在源数据库端的数据库查看模块、对数据库数据内容变更情况进行监听的数据库监听模块、对数据库的结构和数据记录进行复制,形成SQL文件的数据库备份模块、将数据库备份模块备份出的SQL文件进行打包形成可执行文件的打包模块和用于根据打包形成的可执行文件进行更新或创建目标数据库的更新模块;所述数据库查看模块对源数据库的结构和数据进行查看后,数据库备份模块将相应的数据和数据库结构根据SQL命令规范形成SQL文件,由数据库备份模块输出备份;当数据库监听模块监听到数据库数据内容变更时,启动数据库备份模块对变更内容进行备份,并替换相应SQL文件中内容。
当数据库备份模块备份完毕时,启动所述打包模块进行SQL文件的打包。所述更新模块设置有配置文件,所述配置文件内设置数据库结构或数据库数据记录的更新次序。
以下进行详细描述数据库结构和内容的迁移过程。
(1)系统对象变更记录
开发阶段,DTS工具自动记录表结构变更、系统数据变更、表单变更、视图、函数、和存储过程的变更,并将这些变更生不同类型数据库对应的更新脚本。
(2)系统对象的处理
视图、函数、过程的变更,由UPD程序从开发数据库导出为SQL文件。
(3)业务表的处理
UPD程序负责导出用户业务表的DDL语句和变更记录,并对DDL语句整理,做出更新规则;到生产数据库后,先重命名原表,再创建本业务表,并判断字段把原表的数据插入新表,如果新表导出的时候带有数据,再把新表的数据插入进来(该插入语句在导出的时候就准备好了判断的语法);处理完毕后,把重命名的旧表删除。
(4)系统表的处理
目标系统:开发系统
--***应用设计时系统表***--
sys_apppage--菜单
sys_spec--系统对象
sys_wh_yb--显示格式树设置
sys_column--字段
sys_columndis--显示字段
sys_landscep-设计时字段
SYS_DEFAULTUI--默认主题显示风格设置
sys_detialtable--关联表
sys_relation_col--关联表关联字段
sys_expru_arg--过程参数
sys_forminfo--表单,只导出不含流文本的字段值
SYS_FUNOBJ--系统功能列表
SYS_MODELUI--模块显示风格
sys_ODBC--外部数据源
sys_regproc--注册对象
sys_searchcal--查询字段
sys_serchcondition--查询条件设置(可能会出现运行时用户自定义的查询条件)
sys_RelaFlowStart流程是否启动的配置表
--***流程设计时系统表***--
--注:可能会在运行时使用WEB系统的流程管控中心->流程配置影响下列表数据
sys_proc
sys_AutoFlowStart自动启动流程的配置表(不需要数据,以生产机数据为主)
sys_source_target
sys_startupSet
sys_starupTime
sys_usercon
sys_step
sys_stepcon
sys_Workflow
sys_flowGraph
sys_line
sys_linkman
sys_operator
sys_messageMan
--***权限设计时系统表***--
--注:可能会在运行时使用WEB系统的企业管理器->权限设置影响下列表
sys_manpru
sys_DTsecurity
sys_pru
sys_pru_des
sys_rolePru
sys_Tsecurity
--***DDL日志系统表***--
--注:更新之后清空生产系统上该表数据
sys_ddllog
--***记录流水号的系统表***--
--注:该表需要特殊处理
--开发系统中的t_sys_count数据需保留上述列出的表名的记录
--生产系统中的t_sys_count数据需保留除上述列出的表名的记录
--并把两个系统中的t_sys_count数据合并
t_sys_count
(5)表单的处理
UPD导出模块中的相关表单生成文件;
Sys_forminfo中的值先期在系统表处理时把数据已经准备好,并更新过了;把表单文件通过更新程序更新到表中。
(6)配置文件的处理
所有文件准备好后,UPD最后生成更新顺序的配置文件。
所有对象的执行顺序根据数据库的依赖项算法得出执行先后顺序;生成update.ini文件;最后执行的是表单的更新。
(7)其它更新的设计
更新包可以包含其它非数据库的更新内容:如designer、web、db、dts。更新包可以配置好所有的更新后打一个表。
(8)具体打包更新过程
通过UPD生成数据库的相关更新内容放至单独的文件夹;手工把WEB,DESIGNER,DTS的内容以文件夹分开的形式存放好;所有的更新内容准备好后,在其同级文件夹下放置update.ini文件,作为更新配置文件,该文件的数据库部分由UPD准备好了,其它的更新手工准备;把ES2007UPDATE.exe文件放置update.ini同级;使用MakeUpgrade.exe压缩更新目录并生成独立的更新程序(EXE);独立的更新程序运行后提取ES2007UPDATE.exe开始更新。
本发明通过DTS工具可以将平台数据库对象的变更情况进行记录,针对不同类型的数据库可以生成更新DDL语句,系统升级时该DDL语句与所做的WEB升级程序可以一起打包、执行,通过使用DTS工具,可以大幅减少系统升级的工作量,并且可以有效保证升级过程的一致性和正确性。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
上述实例只为说明本发明的技术构思及特点,其目的在于让熟悉此项技术的人是能够了解本发明的内容并据以实施,并不能以此限制本发明的保护范围。凡根据本发明精神实质所做的等效变换或修饰,都应涵盖在本发明的保护范围之内。
Claims (3)
1. 一种数据库数据迁移系统,其特征在于所述系统包括设置在源数据库端的数据库查看模块、对数据库数据内容变更情况进行监听的数据库监听模块和对数据库的结构和数据记录进行复制,形成SQL文件的数据库备份模块;所述数据库查看模块对源数据库的结构和数据进行查看后,数据库备份模块将相应的数据和数据库结构根据SQL命令规范形成SQL文件,由数据库备份模块输出备份;当数据库监听模块监听到数据库数据内容变更时,启动数据库备份模块对变更内容进行备份,并替换相应SQL文件中内容。
2. 根据权利要求1所述的数据库数据迁移系统,其特征在于所述系统还包括将数据库备份模块备份出的SQL文件进行打包形成可执行文件的打包模块;当数据库备份模块备份完毕时,启动所述打包模块进行SQL文件的打包。
3. 根据权利要求2所述的数据库数据迁移系统,其特征在于所述系统还包括用于根据打包形成的可执行文件进行更新或创建目标数据库的更新模块,所述更新模块设置有配置文件,所述配置文件内设置数据库结构或数据库数据记录的更新次序。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011104002515A CN102393860A (zh) | 2011-12-06 | 2011-12-06 | 数据库数据迁移系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011104002515A CN102393860A (zh) | 2011-12-06 | 2011-12-06 | 数据库数据迁移系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102393860A true CN102393860A (zh) | 2012-03-28 |
Family
ID=45861183
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011104002515A Pending CN102393860A (zh) | 2011-12-06 | 2011-12-06 | 数据库数据迁移系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102393860A (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103218402A (zh) * | 2013-03-19 | 2013-07-24 | 上海宝信软件股份有限公司 | 通用的数据库数据结构与数据迁移系统及其方法 |
CN103870357A (zh) * | 2012-12-17 | 2014-06-18 | 中国移动通信集团河南有限公司 | 一种进行数据复制的方法及系统 |
CN104281704A (zh) * | 2014-10-22 | 2015-01-14 | 新华瑞德(北京)网络科技有限公司 | 数据库数据拷贝方法和装置 |
CN104765736A (zh) * | 2014-01-03 | 2015-07-08 | 北大方正集团有限公司 | 数据库的导库方法及装置 |
CN105224527A (zh) * | 2014-05-27 | 2016-01-06 | 北京宸瑞科技有限公司 | 适用于多种目的表更新方式的通用etl方法 |
CN108153806A (zh) * | 2016-11-30 | 2018-06-12 | Ncr公司 | 数据迁移 |
CN108491218A (zh) * | 2018-03-12 | 2018-09-04 | 浙江中控技术股份有限公司 | 一种数据库变更文件生成的方法和装置 |
CN111833919A (zh) * | 2020-07-09 | 2020-10-27 | 南京暴走团电子商务有限公司 | 一种便于系统传输的网络软件开发用传输装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101615199A (zh) * | 2009-07-31 | 2009-12-30 | 深圳市珍爱网信息技术有限公司 | 异构数据库同步方法及系统 |
CN101706803A (zh) * | 2009-11-27 | 2010-05-12 | 天津工业大学 | 一种织造车间生产数据的迁移方法 |
CN101944114A (zh) * | 2010-09-16 | 2011-01-12 | 深圳天源迪科信息技术股份有限公司 | 内存数据库和物理数据库间的数据同步方法 |
CN101989305A (zh) * | 2010-11-09 | 2011-03-23 | 福州星网视易信息系统有限公司 | 数据增量备份方法和系统 |
CN102063500A (zh) * | 2011-01-04 | 2011-05-18 | 北京凯铭风尚网络技术有限公司 | 一种数据迁移的方法及装置 |
US20110191299A1 (en) * | 2010-02-01 | 2011-08-04 | Microsoft Corporation | Logical data backup and rollback using incremental capture in a distributed database |
-
2011
- 2011-12-06 CN CN2011104002515A patent/CN102393860A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101615199A (zh) * | 2009-07-31 | 2009-12-30 | 深圳市珍爱网信息技术有限公司 | 异构数据库同步方法及系统 |
CN101706803A (zh) * | 2009-11-27 | 2010-05-12 | 天津工业大学 | 一种织造车间生产数据的迁移方法 |
US20110191299A1 (en) * | 2010-02-01 | 2011-08-04 | Microsoft Corporation | Logical data backup and rollback using incremental capture in a distributed database |
CN101944114A (zh) * | 2010-09-16 | 2011-01-12 | 深圳天源迪科信息技术股份有限公司 | 内存数据库和物理数据库间的数据同步方法 |
CN101989305A (zh) * | 2010-11-09 | 2011-03-23 | 福州星网视易信息系统有限公司 | 数据增量备份方法和系统 |
CN102063500A (zh) * | 2011-01-04 | 2011-05-18 | 北京凯铭风尚网络技术有限公司 | 一种数据迁移的方法及装置 |
Cited By (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103870357A (zh) * | 2012-12-17 | 2014-06-18 | 中国移动通信集团河南有限公司 | 一种进行数据复制的方法及系统 |
CN103218402B (zh) * | 2013-03-19 | 2016-07-06 | 上海宝信软件股份有限公司 | 通用的数据库数据结构与数据迁移系统及其方法 |
CN103218402A (zh) * | 2013-03-19 | 2013-07-24 | 上海宝信软件股份有限公司 | 通用的数据库数据结构与数据迁移系统及其方法 |
CN104765736B (zh) * | 2014-01-03 | 2017-11-14 | 北大方正集团有限公司 | 数据库的导库方法及装置 |
CN104765736A (zh) * | 2014-01-03 | 2015-07-08 | 北大方正集团有限公司 | 数据库的导库方法及装置 |
CN105224527A (zh) * | 2014-05-27 | 2016-01-06 | 北京宸瑞科技有限公司 | 适用于多种目的表更新方式的通用etl方法 |
CN105224527B (zh) * | 2014-05-27 | 2018-07-13 | 北京宸瑞科技股份有限公司 | 适用于多种目的表更新方式的通用etl方法 |
CN104281704A (zh) * | 2014-10-22 | 2015-01-14 | 新华瑞德(北京)网络科技有限公司 | 数据库数据拷贝方法和装置 |
CN108153806A (zh) * | 2016-11-30 | 2018-06-12 | Ncr公司 | 数据迁移 |
CN108153806B (zh) * | 2016-11-30 | 2021-10-15 | Ncr公司 | 数据迁移 |
CN108491218A (zh) * | 2018-03-12 | 2018-09-04 | 浙江中控技术股份有限公司 | 一种数据库变更文件生成的方法和装置 |
CN108491218B (zh) * | 2018-03-12 | 2021-09-14 | 浙江中控技术股份有限公司 | 一种数据库变更文件生成的方法和装置 |
CN111833919A (zh) * | 2020-07-09 | 2020-10-27 | 南京暴走团电子商务有限公司 | 一种便于系统传输的网络软件开发用传输装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102393860A (zh) | 数据库数据迁移系统 | |
US11841835B2 (en) | Data revision control in large-scale data analytic systems | |
US10762075B2 (en) | Database interface agent for a tenant-based upgrade system | |
US20140101644A1 (en) | Using a data dictionary to determine an upgrade edition of a relational database table | |
CN102142024B (zh) | 在分布式数据库中使用递增捕捉来进行逻辑数据备份和回退 | |
US7480643B2 (en) | System and method for migrating databases | |
US20120174085A1 (en) | Tenant Move Upgrade | |
CN104298760A (zh) | 一种应用于数据仓库的数据处理方法和数据处理装置 | |
US10108690B1 (en) | Rolling subpartition management | |
EP3474160A1 (en) | Data analytic systems | |
CN109240716B (zh) | 一种大数据平台版本管理与快速迭代部署方法及系统 | |
US20190370377A1 (en) | Change management for shared objects in multi-tenancy systems | |
US10346150B2 (en) | Computerized system and method for patching an application by separating executables and working data using different images | |
CN101989305A (zh) | 数据增量备份方法和系统 | |
CN108228223A (zh) | 基于国产cpu环境的多类型数据库统一增量更新方法 | |
CN111367975A (zh) | 一种多协议数据转换处理方法及装置 | |
EP2610768B1 (en) | Data archiving and de-archiving in a business environment | |
CN103946794A (zh) | 数据特征的滚动升级的系统和方法 | |
Curino et al. | Automating database schema evolution in information system upgrades | |
CN105630783A (zh) | 一种数据库数据迁移系统 | |
CN106708906A (zh) | 一种数据库数据迁移系统 | |
WO2014115055A1 (en) | Polymorph table with shared columns | |
CN107479863A (zh) | 专有云的配置信息管理方法和系统 | |
US10101993B2 (en) | System and method for updating content without downtime | |
CN102207880A (zh) | 软件更新方法和软件更新装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C12 | Rejection of a patent application after its publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20120328 |