[发明专利]一种进行数据复制的方法及系统在审
申请号: | 201210558331.8 | 申请日: | 2012-12-17 |
公开(公告)号: | CN103870357A | 公开(公告)日: | 2014-06-18 |
发明(设计)人: | 彭庆军;杜怀忠;郭强;田菁菁;李远 | 申请(专利权)人: | 中国移动通信集团河南有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14;G06F17/30 |
代理公司: | 北京同达信恒知识产权代理有限公司 11291 | 代理人: | 张恺宁 |
地址: | 450008*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 进行 数据 复制 方法 系统 | ||
技术领域
本发明实施例涉及数据库技术领域,尤其涉及一种进行数据复制的方法及系统。
背景技术
随着应用系统的不断发展,系统对于数据库的依赖与日俱增,目前无论金融、政府、石化、电力、教育、医疗还是企业系统,无一例外的出现了数据库的身影,目前应用系统都需要通过数据库来保证交易的完整性以及交易完成的效率,而数据库复制技术为保证各单位的总部和各分部的数据一致提供了支持。
在进行数据复制时会涉及到多种技术,如:SAN(Storage Area Network,即存储区域网络)、NAS(Network Attached Storage,网络附加存储)技术、远程镜像技术、基于IP的SAN的互连技术、快照技术等。
但是,现有的数据库复制技术主要是基于存储和网络的底层复制,仅适用于同构环境,即要求主备系统的两端主机、操作系统、数据库版本等环境要求一致,在异构环境下无法进行复制。
综上,当源数据库和目标数据库处于异构环境下时,无法进行数据复制。
发明内容
本发明实施例提供一种数据复制的方法及系统,用以解决现有技术中存在的当源数据库和目标数据库处于异构环境下时,无法进行数据复制的问题。
本发明实施例提供的一种进行数据复制的方法,包括:
源数据库系统从日志文件中获取每条结构化查询语言SQL语句;
所述源数据库系统将获取的SQL语句中需要复制的交易对应的SQL语句封装成数据包发送给目标数据库系统。
较佳地,所述源数据库系统根据以下步骤将需要复制的交易对应的SQL语句封装成数据包发送给目标数据库系统:
针对一个需要复制的交易,所述源数据库系统将该交易对应的SQL语句存储到该交易对应的软件的内存中;
所述源数据库系统将每个软件的内存中的SQL语句封装成一个数据包后,将封装的数据包发送给目标数据库系统。
较佳地,所述源数据库系统根据以下步骤将每个交易对应的SQL语句存储到对应软件的内存中:
所述源数据库系统通过查询配置文件,判断每个交易对应的软件,并将每个交易对应的SQL语句按照交易顺序分发到对应软件的内存中;
所述源数据库系统将每个软件的内存中的SQL语句封装成一个数据包后,将封装的数据包发送给目标数据库系统,包括:
针对一个软件,所述源数据库系统按照交易顺序读取该软件中需要复制的交易对应的SQL语句,将所述SQL语句封装成一个数据包后发送给目标数据库系统。
本发明实施例提供的一种进行数据复制的方法,包括:
目标数据库系统接收源数据库系统发送的需要复制的交易对应的SQL语句封装成的数据包;
所述目标数据库系统将所述数据包中的每个交易对应的SQL语句装载到目标数据库中。
较佳地,针对一个数据包,所述目标数据库系统根据以下步骤将该数据包中每个交易对应的SQL语句装载到所述目标数据库中该数据包对应的软件的内存中:
针对该数据包中的一个交易,所述目标数据库系统根据配置文件将该交易对应的SQL语句分发到该交易对应的内存队列中;
所述目标数据库系统将该数据包中的每个交易对应的SQL语句装载到目标数据库中,包括:
所述目标数据库系统分别从每个内存队列中读取接收的交易对应的SQL语句,并装载到目标数据库中。
较佳地,针对一个数据包,所述目标数据库系统根据以下步骤将该数据包中每个交易对应的SQL语句分发到对应的内存队列中:
所述目标数据库系统通过查询配置文件,判断该数据包中每个交易对应的内存队列,将该数据包中每个交易对应的SQL语句按照交易顺序分发到对应的内存队列中;
所述目标数据库系统分别从每个内存队列中读取接收的交易对应的SQL语句,并装载到目标数据库中,包括:
针对一个内存队列,所述目标数据库系统按照交易顺序读取该内存队列中的每个交易对应的SQL语句,并将读取的SQL语句装载到所述目标数据库中。
较佳地,所述目标数据库系统分别从每个内存队列中读取接收的交易对应的SQL语句,包括:
所述目标数据库系统在从所述内存队列中读取接收的交易对应的SQL语句时,若内存出错,则中断读取;
所述目标数据库系统将所述内存队列中的交易对应的SQL语句记录到内存错误文件中,在内存恢复正常后,将所述内存错误文件的交易对应的SQL语句存储到对应的内存队列中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国移动通信集团河南有限公司,未经中国移动通信集团河南有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210558331.8/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置