Oracle数据库的相关的远程复制的解决方案

数据库 Oracle
我们今天所要讨论的是Oracle的相关的远程复制和异地容灾的详细描述,本文分成三大部分对其进行描述,以下就是相关内容的具体描述。

以下的文章是对Oracle的相关的远程复制和异地容灾的详细描述,就现在而言,针对Oracle数据库的相关的远程复制、以及相关容灾主要有下面几种技术或解决方案,希望你再浏览完之后会有所收获。

 

1、基于存储层的容灾复制方案

 

这种技术的复制机制是通过基于SAN的存储局域网进行复制,复制针对每个IO进行,复制的数据量比较大;系统可以实现数据的同步或异步两种方式的复制。对大数据量的系统来说有很大的优势(每天日志量在60G以上),但是对主机、操作系统、Oracle数据库版本等要求一致,且对络环境的要求比较高。

目标系统不需要有主机,只要有存储设备就可以,如果需要目标系统可读,需要额外的配置和设备,比较麻烦。

2、基于逻辑卷的容灾复制方案

这种技术的机制是通过基于TCP/IP的网络环境进行复制,由操作系统进程捕捉逻辑卷的变化进行复制。其特点与基于存储设备的复制方案比较类似,也可以选择同步或异步两种方式,对主机的软、硬件环境的一致性要求也比较高,对大数据量的应用比较有优势。其目标系统如果要实现可读,需要创建第三方镜像。个人认为这种技术和上面提到的基于存储的复制技术比较适合于超大数据量的系统,或者是应用系统的容灾复制。

 

3、基于Oracle redo log的逻辑复制方式

使用这种方式的主要有一些第三方的软件,以及Oracle自己的DATAGUARD 中的logical Standby。目前,国外已经有了很多比较成熟的产品及成功案例,国内也有类似的产品, 但在产品的成熟程度和成功案例上跟国外还有一定的差距。

 

这类产品的原理基本相同,其工作过程可以分为以下几个流程:

使用Oracle以外的独立进程,捕捉redo log file 的信息,将其翻译成sql语句,再通过网络传输到目标端Oracle数据库,在目标端数据库执行同样的sql。如果其进程赶不上Oracle日志切换,也可以捕捉归档日志中的内容。也有的产品在源端以事务为单位,当一个事务完成后,再把它传输到目标端。所有的产品一般都是以表为单位进行复制,同时也支持大部分DDL的复制(主要在Oracle9i环境中)。

 

这种技术的技术特点和优势主要有以下几点:

目标端数据库一直是一个可以访问的Oracle数据库;能保证两端数据库的事务一致性;因为使用Oracle以外的进程进行捕捉,且其优先级低于Oracle进程,所以对源系统数据库的性能影响很小;基于其实现原理及多个队列文件的使用,复制环境可以提供网络失败、数据库失败、主机失败的容错能力;因为这类软件复制的只是sql语句或事务,所以他可以完全支持异构环境的复制,硬件的型号,Oracle的版本,操作系统的种类、版本等都没有要求。

 

这种方式还可以支持多种复制方式,比如数据集中、分发、对等复制、或者多层测的复制等。

由于传输的内容只是redolog 或archive log中的一部分,所以对网络资源的占用很小,可以实现不同城市之间的远程复制。

 

基于redolog的逻辑复制产品有很多的优势,但跟上面提到过的其他方案比较起来,也有一些缺点:

数据库的吞吐量太大时,其实据会有较大的延迟,当Oracle数据库每天的日量达到60G或更大时,这种方案的可行性交差;实施的过程可能会有一些停机时间,来进行数据的同步和配置的激活;复制环境建立起来以后,对数据库结构上的一些修改需要按照规定的操作流程进行,有一定的维护成本。

不过目前这类产品的发展很快,上面的这些问题,在大部分产品的最新版本中都有很大的改进。

文章出自:http://database.csdn.net/page/c028435b-83f4-4f23-9051-fb536533c47f

【编辑推荐】

  1. Oracle细粒度的访问控制的基本工作方式
  2. 浅析:Oracle jdbc分页效率的测试
  3. Oracle数据库的异构服务原理描述
  4. Oracle 10g数据库的相关内容描述
  5. Oracle数据库中程序设计的语言有哪些
责任编辑:佚名 来源: csdn
相关推荐

2011-08-12 12:26:16

Oracle数据库TNSListener

2011-08-22 15:31:51

SQL Servermssqlserver数据库复制

2010-04-29 15:33:12

Oracle数据库

2011-08-02 14:51:07

SQL Server远程连接

2010-04-22 17:17:44

Oracle远程复制

2010-05-13 10:27:24

MySQL数据库

2011-08-23 10:02:26

Oracle数据库存储过程挂死

2010-05-27 18:24:09

MySQL数据库密码

2011-03-03 18:09:14

2011-03-28 13:11:18

MySQL数据库安全

2010-05-07 16:30:01

Oracle数据集成

2018-03-26 12:58:52

数据库OracleMySQL

2010-04-30 17:33:27

Oracle数据集成

2011-07-15 17:15:27

domino数据库ACL

2010-04-15 08:57:29

Oracle数据库

2011-08-03 14:02:02

数据库连接ACCESS

2010-05-28 11:22:07

2011-08-03 16:25:59

SQL Server 远程数据库连接

2011-07-26 16:05:19

Oracle数据库服务器

2012-04-16 15:00:05

Oracle数据库安全
点赞
收藏

51CTO技术栈公众号