CN109165260A - 基于oracle数据库链的数据转储方法 - Google Patents
基于oracle数据库链的数据转储方法 Download PDFInfo
- Publication number
- CN109165260A CN109165260A CN201811119287.4A CN201811119287A CN109165260A CN 109165260 A CN109165260 A CN 109165260A CN 201811119287 A CN201811119287 A CN 201811119287A CN 109165260 A CN109165260 A CN 109165260A
- Authority
- CN
- China
- Prior art keywords
- dump
- data
- database
- data transfer
- oracle
- 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
Abstract
本发明公开了基于ORACLE数据库链的数据转储方法,包括:步骤1,在异地设置目标数据库服务器,将需要备份的源数据库中的数据转储到此服务器中;步骤2,在目标数据库上创建数据库链;步骤3,在目标数据库服务器上创建配置文件;步骤4,建立转储规则表以及转储信息表;步骤5,运行数据转储程序,读取配置文件;步骤6,读取系统时间;步骤7,转储程序运行时自动从转储规则表中按照转储序号顺序读取一个表的规则信息;步骤8,在转储信息表中记录本次转储信息,步骤9,判断是否完成所有表的转储;步骤10,判断是否转储失败。该数据转储方法克服了现有技术中的数据转储方法的效率低,耗费时间多以及抗干扰能力差的问题。
Description
技术领域
本发明涉及数据转储领域,具体地,涉及一种基于ORACLE数据库链的数据转储方法。
背景技术
随着信息化的发展,越来越多的信息系统使用数据库,越来越多的重要数据存储在后台数据库中,系统运行依赖数据库,如果数据库中数据被攻击或破坏,将会影响系统正常运行。系统有可能被人为攻击而损坏,也可能因病毒或其他意外故障而损坏,不管是哪情况,都是要利用转储备份的数据进行数据恢复,所以平时做好数据转储,将数据及时异地备份是一件非常重要的工作。
按照转储的状态,数据转储分为静态转储和动态转储两种方式,静态转储是指在数据库无人使用的时候进行的转储,动态转储是指不限制正常使用,边使用边转储;按照转储的方式,数据转储分为海量转储和增量转储,海量转储是指每次转储全部的数据,增量转储是指每次只转储上一次转储后变化的数据。在现在互联网+时代,系统基本都是24小时提供服务,所以不可能采用静态转储的方式,只能是动态转储;如果系统中数据比较多,数据库比较大,每次都进行海量转储很耗费时间,所以需要细致划分数据表,根据实际情况,将有的表采用每次全转的方式,有的采用增量转储方式。
因此,提供一种在使用过程中将目标数据库服务器和源数据服务器建立直接连接进行定时的数据转储,既提高了转储系统的运行速度,也提高了系统的稳定性;且可以使转储操作灵活可控,转储状态及时记录的基于ORACLE数据库链的数据转储方法是本发明亟需解决的问题。
发明内容
针对上述技术问题,本发明的目的是提供一种在使用过程中将目标数据库服务器和源数据库服务器建立直接连接进行定时的数据转储,既提高了转储系统的运行速度,也提高了系统的稳定性;且可以使转储操作灵活可控,转储状态及时记录的基于ORACLE数据库链的数据转储方法。
为了实现上述目的,本发明提供了一种基于ORACLE数据库链的数据转储方法,所述数据转储方法包括:
步骤1,在异地设置目标数据库服务器,将需要备份的源数据库中的数据转储到此服务器中,所述目标数据库服务器上创建有与所述源数据库一致的目标数据库;
步骤2,在所述目标数据库上创建数据库链,建立与所述源数据库的直接连接;
步骤3,在所述目标数据库的服务器上创建配置文件;
步骤4,建立转储规则表以及转储信息表;
步骤5,运行数据转储程序,读取配置文件,并且连接所述源数据库;
步骤6,读取系统时间,根据配置文件判断是否达到规定的时间点,如果达到规定的时间点,则进行步骤7,否则重复执行步骤6;
步骤7,转储程序运行时自动从所述转储规则表中按照转储序号顺序读取一个表的规则信息,再从所述转储信息表中读取与所述转储规则表中对应的转储信息,然后提取数据;
步骤8,在所述转储信息表中记录本次转储信息,
步骤9,判断是否完成所有表的转储,如果完成则进行步骤10,否则返回步骤7;
步骤10,判断是否有转储失败表,如果有则通知数据库管理员后再返回步骤6,否则直接返回步骤6。
优选地,所述步骤7中提取数据包括以下步骤:
步骤7.1,判断从转储规则表中读取的表是否为增量转储,如果是则生成增量delete和select语句;否则生成非增量delete和select语句;
步骤7.2,删除目标数据库中指定范围记录;
步骤7.3,判断步骤7.2中是否删除成功;如果是,则读取源数据库中相应数据,然后进行步骤7.4;否则标记该表转储失败;
步骤7.4,判断读取源数据库中相应数据是否成功;如果是,则标记该表转储成功,否则标记该表转储失败。
优选地,所述步骤1中直接拷贝所述源数据库中的数据副本到所述目标数据库中进行安装。
优选地,所述步骤2中创建的数据库链为ORACLE数据库链路。
优选地,所述步骤3中创建的配置文件包括:数据库链路的名称、账号、密码、线程数和开始转储时间。
优选地,所述步骤7转储规则记录在所述转储规则表中,所述转储规则表中记录表名、模式名、带参数的查询语句、插入语句、删除语句、条件语句、统计语句、形式参数标记、数据库类型和转储序号,其中,一条记录是一个表的信息;所述转储信息表中记录表名、转储标志(增量转储或非增量转储)、转储开始时间、转储结束时间、源记录数、目标记录数和转储状态,且每个表的每一次转储操作都在所述转储信息表中插入一条记录。
优选地,所述步骤10中对于存储失败的记录通过无线传输方式通知数据库管理员,数据库管理员通过启动人工手动转储程序重新转储,或者下次自动转储时自动补上所有未转数据。
优选地,所述无线传输方式包括:邮件或短信。
根据上述技术方案,本发明提供的基于ORACLE数据库链的数据转储方法在使用时,将目标服务器和源数据服务器建立直接连接进行定时的数据转储,既提高了转储系统的运行速度,也提高了系统的稳定性;且可以使转储操作灵活可控,转储状态及时记录,可以在不影响系统运行的情况下快速备份出数据库中数据,备份数据库即可用于数据库出现故障时进行恢复,也可作为备用服务器提供信息查询服务,以分担主数据库的压力。
本发明的其他特征和优点将在随后的具体实施方式部分予以详细说明。
附图说明
附图是用来提供对本发明的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明,但并不构成对本发明的限制。在附图中:
图1是本发明的一种优选的实施方式中提供的基于ORACLE数据库链的数据转储方法的流程框图;
图2是本发明的一种优选的实施方式中提供的基于ORACLE数据库链的数据转储方法中提取数据的流程框图;
图3是本发明的一种优选的实施方式中提供的基于ORACLE数据库链的数据转储方法的原理图。
具体实施方式
以下结合附图对本发明的具体实施方式进行详细说明。应当理解的是,此处所描述的具体实施方式仅用于说明和解释本发明,并不用于限制本发明。
如图1-3所示,本发明提供了基于ORACLE数据库链的数据转储方法,所述数据转储方法包括:
步骤1,在异地设置数据库备份服务器(目标数据库服务器),将需要备份的源数据库中的数据转储到此服务器中,所述数据库备份服务器上创建有与所述源数据库一致的目标数据库;
步骤2,在所述目标数据库上创建数据库链,建立与所述源数据库的直接连接;
步骤3,在所述目标数据库的服务器上创建配置文件;
步骤4,建立转储规则表以及转储信息表;
步骤5,运行数据转储程序,读取配置文件,并且连接所述源数据库;
步骤6,读取系统时间,根据配置文件判断是否达到规定的时间点,如果达到规定的时间点,则进行步骤7,否则重复执行步骤6;
步骤7,转储程序运行时自动从所述转储规则表中按照转储序号顺序读取一个表的规则信息,再从所述转储信息表中读取与所述转储规则表中对应的转储信息,然后提取数据;
步骤8,在所述转储信息表中记录本次转储信息,
步骤9,判断是否完成所有表的转储,如果完成则进行步骤10,否则返回步骤7;
步骤10,判断是否有转储失败表,如果有则通知数据库管理员后再返回步骤6,否则直接返回步骤6。
根据上述技术方案,本发明提供的基于ORACLE数据库链的数据转储方法在使用时,将目标服务器和源数据服务器建立直接连接进行定时的数据转储,既提高了转储系统的运行速度,也提高了系统的稳定性;且可以使转储操作灵活可控,转储状态及时记录,可以在不影响系统运行的情况下快速备份出数据库中数据,备份数据库即可用于数据库出现故障时进行恢复,也可作为备用服务器提供信息查询服务,以分担主数据库的压力。
在本发明的一种优选的实施方式中,所述步骤7中提取数据包括以下步骤:
步骤7.1,判断从转储规则表中读取的表是否为增量转储,如果是则生成增量delete和select语句;否则生成非增量delete和select语句;
步骤7.2,删除目标数据库中指定范围记录;
步骤7.3,判断步骤7.2中是否删除成功;如果是,则读取源数据库中相应数据,然后进行步骤7.4;否则标记该表转储失败;
步骤7.4,判断读取源数据库中相应数据是否成功;如果是,则标记该表转储成功,否则标记该表转储失败。
在本发明的一种优选的实施方式中,所述步骤1中直接拷贝所述源数据库中的数据副本到所述目标数据库中进行安装。这样保证数据的完整性和准确性。
在本发明的一种优选的实施方式中,所述步骤2中创建的数据库链为ORACLE数据库链路。使用数据库链路而不使用JDBC或ODBC接口的好处,一是数据不需通过程序装载、卸载,再装入目标数据库,而是通过数据链路直接查询插入,就像在一个数据库中一样,这样可以防止因为网络问题而造成的错误,同时也提高了运行速度;二是将系统的事务管理、并发控制、线程、队列管理等事宜都交由DBMS处理,避免了人为编写程序受各种情况影响而产生的错误,也提高了系统的稳定性。
在本发明的一种优选的实施方式中,所述步骤3中创建的配置文件包括:数据库链路的名称、账号、密码、线程数和开始转储时间。
在本发明的一种优选的实施方式中,所述步骤7中转储规则记录在所述转储规则表中,所述转储规则表中记录表名、模式名、带参数的查询语句、插入语句、删除语句、条件语句、统计语句、形式参数标记、数据库类型和转储序号,其中,一条记录是一个表的信息;所述转储信息表中记录表名、转储标志(增量转储或非增量转储)、转储开始时间、转储结束时间、源记录数、目标记录数和转储状态,且每个表的每一次转储操作都在所述转储信息表中插入一条记录。
在本发明的一种优选的实施方式中,所述步骤7中按照转储序号顺序将所述转储规则表中的所有表都转储一遍,即完成了一次转储,转储结束后等待下一个转储时间点。
在本发明的一种优选的实施方式中,所述步骤10中对于存储失败的记录通过无线传输方式通知数据库管理员,数据库管理员通过启动人工手动转储程序重新转储,或者下次自动转储时自动补上所有未转数据,从而保证数据转储的完整性。
为了有效地提醒数据库管理员对于转储失败的数据进行及时地转储,在本发明的一种优选的实施方式中,所述无线传输方式包括:邮件或短信。
以上结合附图详细描述了本发明的优选实施方式,但是,本发明并不限于上述实施方式中的具体细节,在本发明的技术构思范围内,可以对本发明的技术方案进行多种简单变型,这些简单变型均属于本发明的保护范围。
另外需要说明的是,在上述具体实施方式中所描述的各个具体技术特征,在不矛盾的情况下,可以通过任何合适的方式进行组合,为了避免不必要的重复,本发明对各种可能的组合方式不再另行说明。
此外,本发明的各种不同的实施方式之间也可以进行任意组合,只要其不违背本发明的思想,其同样应当视为本发明所公开的内容。
Claims (8)
1.一种基于ORACLE数据库链的数据转储方法,其特征在于,所述数据转储方法包括:
步骤1,在异地设置目标数据库服务器,将需要备份的源数据库中的数据转储到此服务器中,所述目标数据库服务器上创建有与所述源数据库一致的目标数据库;
步骤2,在所述目标数据库上创建数据库链,建立与所述源数据库的直接连接;
步骤3,在所述目标数据库服务器上创建配置文件;
步骤4,建立转储规则表以及转储信息表;
步骤5,运行数据转储程序,读取配置文件,并且连接所述源数据库;
步骤6,读取系统时间,根据配置文件判断是否达到规定的时间点,如果达到规定的时间点,则进行步骤7,否则重复执行步骤6;
步骤7,转储程序运行时自动从所述转储规则表中按照转储序号顺序读取一个表的规则信息,再从所述转储信息表中读取与所述转储规则表中对应的转储信息,然后提取数据;
步骤8,在所述转储信息表中记录本次转储信息;
步骤9,判断是否完成所有表的转储,如果完成则进行步骤10,否则返回步骤7;
步骤10,判断是否有转储失败表,如果有则通知数据库管理员后再返回步骤6,否则直接返回步骤6。
2.根据权利要求1所述的基于ORACLE数据库链的数据转储方法,其特征在于,所述步骤7中提取数据包括以下步骤:
步骤7.1,判断从转储规则表中读取的表是否为增量转储,如果是则生成增量delete和select语句;否则生成非增量delete和select语句;
步骤7.2,删除目标数据库中指定范围记录;
步骤7.3,判断步骤7.2中是否删除成功;如果是,则读取源数据库中相应数据,然后进行步骤7.4;否则标记该表转储失败;
步骤7.4,判断读取源数据库中相应数据是否成功;如果是,则标记该表转储成功,否则标记该表转储失败。
3.根据权利要求1所述的基于ORACLE数据库链的数据转储方法,其特征在于,所述步骤1中直接拷贝所述源数据库中的数据副本到所述目标数据库中进行安装。
4.根据权利要求1所述的基于ORACLE数据库链的数据转储方法,其特征在于,所述步骤2中创建的数据库链为ORACLE数据库链路。
5.根据权利要求1所述的基于ORACLE数据库链的数据转储方法,其特征在于,所述步骤3中创建的配置文件包括:数据库链路的名称、账号、密码、线程数和开始转储时间。
6.根据权利要求1所述的基于ORACLE数据库链的数据转储方法,其特征在于,所述步骤7转储规则记录在所述转储规则表中,所述转储规则表中记录表名、模式名、带参数的查询语句、插入语句、删除语句、条件语句、统计语句、形式参数标记、数据库类型和转储序号,其中,一条记录是一个表的信息;
所述转储信息表中记录表名、转储标志(增量转储或非增量转储)、转储开始时间、转储结束时间、源记录数、目标记录数和转储状态,且每个表的每一次转储操作都在所述转储信息表中插入一条记录。
7.根据权利要求1所述的基于ORACLE数据库链的数据转储方法,其特征在于,所述步骤10中对于存储失败的记录通过无线传输方式通知数据库管理员,数据库管理员通过启动人工手动转储程序重新转储,或者下次自动转储时自动补上所有未转数据。
8.根据权利要求7所述的基于ORACLE数据库链的数据转储方法,其特征在于,所述无线传输方式包括:邮件或短信。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811119287.4A CN109165260A (zh) | 2018-09-25 | 2018-09-25 | 基于oracle数据库链的数据转储方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811119287.4A CN109165260A (zh) | 2018-09-25 | 2018-09-25 | 基于oracle数据库链的数据转储方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109165260A true CN109165260A (zh) | 2019-01-08 |
Family
ID=64880519
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811119287.4A Pending CN109165260A (zh) | 2018-09-25 | 2018-09-25 | 基于oracle数据库链的数据转储方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109165260A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110309128A (zh) * | 2019-07-05 | 2019-10-08 | 广东铭太信息科技有限公司 | Oracle备份文件自动导入装置及其实现方法、利用该装置进行备份文件导入的方法 |
CN113127321A (zh) * | 2021-04-21 | 2021-07-16 | 平安银行股份有限公司 | 基于Jmeter的数据读取方法、装置、设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1877569A (zh) * | 2005-06-06 | 2006-12-13 | 华为技术有限公司 | 通用数据库自动转储方法及系统 |
CN101266606A (zh) * | 2007-03-15 | 2008-09-17 | 阿里巴巴公司 | 一种基于Oracle数据库的在线数据迁移方法 |
CN101355726A (zh) * | 2007-07-25 | 2009-01-28 | 国际商业机器公司 | 基于多媒体消息传递服务的数据库同步方法和系统 |
CN101719165A (zh) * | 2010-01-12 | 2010-06-02 | 山东高效能服务器和存储研究院 | 一种实现数据库高效快速备份的方法 |
CN101789021A (zh) * | 2010-02-24 | 2010-07-28 | 浪潮通信信息系统有限公司 | 一种通用可配置的数据库数据迁移方法 |
US20100268784A1 (en) * | 2009-04-17 | 2010-10-21 | Marc Henness | Data synchronization system and method |
CN102999537A (zh) * | 2011-09-19 | 2013-03-27 | 阿里巴巴集团控股有限公司 | 一种数据迁移系统和方法 |
CN103823797A (zh) * | 2012-11-16 | 2014-05-28 | 镇江诺尼基智能技术有限公司 | 基于ftp协议的行业数据库数据实时同步系统 |
CN104573122A (zh) * | 2015-02-09 | 2015-04-29 | 浪潮电子信息产业股份有限公司 | 一种从AIX平台向K-UX平台迁移的Oracle数据库迁移工具 |
CN107391306A (zh) * | 2017-07-27 | 2017-11-24 | 国家电网公司 | 一种异构数据库备份文件恢复方法 |
US20170364962A1 (en) * | 2016-06-21 | 2017-12-21 | Wal-Mart Stores, Inc. | Systems and methods for communicating sourcing information to customers |
-
2018
- 2018-09-25 CN CN201811119287.4A patent/CN109165260A/zh active Pending
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1877569A (zh) * | 2005-06-06 | 2006-12-13 | 华为技术有限公司 | 通用数据库自动转储方法及系统 |
CN101266606A (zh) * | 2007-03-15 | 2008-09-17 | 阿里巴巴公司 | 一种基于Oracle数据库的在线数据迁移方法 |
CN101355726A (zh) * | 2007-07-25 | 2009-01-28 | 国际商业机器公司 | 基于多媒体消息传递服务的数据库同步方法和系统 |
US20100268784A1 (en) * | 2009-04-17 | 2010-10-21 | Marc Henness | Data synchronization system and method |
CN101719165A (zh) * | 2010-01-12 | 2010-06-02 | 山东高效能服务器和存储研究院 | 一种实现数据库高效快速备份的方法 |
CN101789021A (zh) * | 2010-02-24 | 2010-07-28 | 浪潮通信信息系统有限公司 | 一种通用可配置的数据库数据迁移方法 |
CN102999537A (zh) * | 2011-09-19 | 2013-03-27 | 阿里巴巴集团控股有限公司 | 一种数据迁移系统和方法 |
CN103823797A (zh) * | 2012-11-16 | 2014-05-28 | 镇江诺尼基智能技术有限公司 | 基于ftp协议的行业数据库数据实时同步系统 |
CN104573122A (zh) * | 2015-02-09 | 2015-04-29 | 浪潮电子信息产业股份有限公司 | 一种从AIX平台向K-UX平台迁移的Oracle数据库迁移工具 |
US20170364962A1 (en) * | 2016-06-21 | 2017-12-21 | Wal-Mart Stores, Inc. | Systems and methods for communicating sourcing information to customers |
CN107391306A (zh) * | 2017-07-27 | 2017-11-24 | 国家电网公司 | 一种异构数据库备份文件恢复方法 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110309128A (zh) * | 2019-07-05 | 2019-10-08 | 广东铭太信息科技有限公司 | Oracle备份文件自动导入装置及其实现方法、利用该装置进行备份文件导入的方法 |
CN110309128B (zh) * | 2019-07-05 | 2020-07-17 | 广东铭太信息科技有限公司 | Oracle备份文件自动导入装置及其实现方法、利用该装置进行备份文件导入的方法 |
CN113127321A (zh) * | 2021-04-21 | 2021-07-16 | 平安银行股份有限公司 | 基于Jmeter的数据读取方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7747575B2 (en) | Application-specific intelligent backup and restore system | |
CN106096397B (zh) | 一种勒索软件的防范方法和系统 | |
CN1707481B (zh) | 用于数据模型中实体的自动维护与修复的系统和方法 | |
US8996458B2 (en) | High volume, high speed adaptive data replication | |
US7685189B2 (en) | Optimizing backup and recovery utilizing change tracking | |
US9507841B2 (en) | Consistent backup of a distributed database system | |
CN105574187B (zh) | 一种异构数据库复制事务一致性保障方法及系统 | |
CN109165260A (zh) | 基于oracle数据库链的数据转储方法 | |
CN105068888B (zh) | 一种基于Oracle数据库的数据恢复方法 | |
CN102388369B (zh) | 源自单一备份的粒度应用程序数据的生命周期 | |
CN102567453A (zh) | 在多版本数据库系统中的万圣夜保护 | |
CN102054041B (zh) | 元数据升级方法和系统 | |
CN108446346B (zh) | 一种数据集中备份系统及方法 | |
CN105653718A (zh) | 存储磁盘快照环境下保证快照后数据库数据一致性的方法 | |
US20040107198A1 (en) | Method and arrangements for node recovery | |
US20050052921A1 (en) | Fast and economical establishment of remote copy | |
CN110333970A (zh) | 一种数据恢复方法及装置 | |
CN110263060A (zh) | 一种erp电子附件管理方法及计算机设备 | |
CN105184197A (zh) | 涉密数据彻底擦除的方法 | |
Cisco | Database Administration | |
Cisco | Database Administration | |
Cisco | Database Administration | |
Cisco | Database Administration | |
CN107844387A (zh) | 一种通用数据备份方法、系统及装置 | |
Cisco | Database Administration |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190108 |