复制,顾名思义就是将数据库中的数据拷贝到不同物理地点的数据库中。 在很多生产环境中,经常遇到一些大量得数据,这些数据只用作查询统计功能。例如:历史告警,历史性能指标,历史事件,等等。这种数据的特点是:只读不写,数据量相当大,一旦查询大结果集的数据时,对数据库的IO,内存缓存占用相当大,会严重影响同一个数据库的其他会话的操作,表现为整个数据库反应迟缓,业务功能不可用。采用复制技术后,将这些大型数据复制到另外一个数据库中,对这些大数据的查询统计操作放在另外的一台数据库服务器上进行,即使受影响,也只是影响局部的查询统计功能,其他正常的业务处理不受影响。 但是,使用复制技术的话,意味着一个系统中,至少存在两个数据库(集群的数据库也当成一个数据库),对应的应用程序也需要建立多个数据库连接,能够根据业务需要,访问不同的数据库。 ORACLE数据库自身提供有复制功能,只需要进行配置即可实现。 ORACLE提供有三种复制技术: 高级复制(Advanced Replication) 流复制(Streams Replication) 备库(Dataguard) 备库的方式,就是数据库对数据库的备份方式,主要是解决容灾的,不讨论此话题。 流复制主要是利用ORACLE的归档日志,进行增量备份来实现的,不仅可以配置只复制某些表,还可以配置仅复制某些表上的ddl或dml。可以复制到表,用户,数据库级别。 高级复制主要是基于触发器的原理来触发数据同步的,因此,高级复制无法实现用户,数据库级别的对象复制,只能做些表、索引和存储过程的复制。 如果出于容灾整个数据库的考虑,高级复制相当复杂,而且并不一定能做好,流复制的配置相对简单。流复制是后来产生的复制技术,是基于日志挖掘技术实现的,对数据库的影响较低。但在稳定性方面较差,实时性没有高级复制强(因为高级复制是基于触发器的)。如果系统意外的话,流复制的恢复将会需要较长时间,特别是意外时间越长,恢复时间成倍增长。 下面使用相同的环境,分别对两种复制功能进行配置介绍,并进行性能压力测试比较。
2022-09-14 11:46:41 140KB 数据库复制 高级复制 流复制
1
linux高级复制可显示进度条必备最新版本coreutils-8.30.tar.xz
2022-01-03 12:11:04 5.11MB 复制 高级 进度条 Linux
1
基于ORACLE高级复制技术下的集团化医院数据交换方案的研究.pdf
2021-10-18 20:07:25 149KB Oracle 数据库 关系型数据库 参考文献
基于ORACLE高级复制技术实现内外网一体化设计方法.pdf
2021-10-18 20:07:25 138KB Oracle 数据库 关系型数据库 参考文献
基于Oracle高级复制的分布式数据库系统应用研究.pdf
2021-10-18 20:07:07 231KB Oracle 数据库 关系型数据库 参考文献
以异地容灾系统和数据仓库需要实时同步生产系统的数据为背景,介绍了一个异地容灾系统和数据仓库中数据同步软件的功能模型;对两个系统中数据同步的设计和体系结构作了介绍,并阐述了该数据同步软件所采用的Oracle高级复制技术。
1
wget http://ftp.gnu.org/gnu/coreutils/coreutils-8.32.tar.xz tar xvJf coreutils-8.32.tar.xz cd coreutils-8.32/ patch -p1 -i advcpmv-0.8-8.32.patch ./configure make
2021-03-18 22:58:37 22KB Linux高级复制 cp显示进度条
1