使用指南
数据库基础:Oracle复制方法逐步精细(1)
日益增长的分布式应用需求要求实现更好分布式的软件环境,不断推动着分布式技术的进步。Oracle数据复制是实现分布式数据环境的一种技术,通过在不同的物理站点拷贝数据来建立分布式数据环境。它与分布式数据库不同,在分布式数据库中,虽然每个数据对象也对所有
2026-07-30 · 5 次阅读
日益增长的分布式应用需求要求实现更好分布式的软件环境,不断推动着分布式技术的进步。oracle数据复制是实现分布式数据环境的一种技术,通过在不同的物理站点拷贝数据来建立分布式数据环境。它与分布式数据库不同,在分布式数据库中,虽然每个数据对象也对所有的站点可用,但是特定的数据对象只存在于一个特定的站点中。而数据复制实现所有的站点都有相同数据对象的可用拷贝。
在一个典型的分布式商业应用中经常需要把个地区的数据备份到总部的数据库中,一方面可以作为一种备份方式,另一方面也方便总部应用中的综合统计。这是Oracle数据复制中的简单应用,本文将以这样一个例子,讲述如何实现Oracle数据复制。
实际情况是,A公司总部在北京,有三个营业部分别位于上海(Orace.ShangeHai.com)、杭州(Oracle.HangZhou.com)和武汉(Oracle.Wuhan.com)。三个营业部的软件系统相同,数据库结构也相同。现在需要把三个营业部的数据全部备份到总部的数据库中。
准备工作
在进行复制之前需要准备的东西很多,当然最基础就是网络必须畅通,之后需要收集一些复制环境的基本信息:
1. 需要复制的数据库站点的数量。
2. 每个站点的Oracle版本号。
3. 每个需要复制的数据库的大小。
4. 每个数据库所使用的字符集。
5. 每个需要复制的数据所用的方案名。
收集完环境信息,可以开始建立总部的集中数据库,集中数据库要求版本高于所有主战点的版本,最好所有的数据库都是用相同的字符集。建好库后为每个主站点的备份数据分别建一个表空间,表空间大于需要复制的数据量,至于预留以后的发展空间视实际情况而定。
为每个主站点的对应复制数据建立方案,如果各个主站点所使用的方案名不同,在集中数据库站点分别建立名称相同的对应方案。否则为各主站点的复制数据分别建立相应的方案名。实际情况是后者,各营业部的数据库都是用Oracle的方案名,这里我们建立三个对应方案:SHORACL、HZORACL 和WHORACL。所有数据库的版本都是9i。
基本概念
复制之前先解释一下复制中的几个概念:
1.主站点(Mater Site):在复制过程中提供数据源的站点。如上图中的上海数据库站点。
2.实体化视图站点(Materialized View Site):实体化视图复制中的目标站点。
3.多主体站点复制(Multimaster Replication):复制环境中的站点都是主站点,对复制的数据库对象有相同的管理权限。
4.实体化视图复制(Materialized View Replication):一个主体站点提供源复制对象,一个实体化视图站点拷贝主站点数据。
5.实体化视图(Materialized View):在实体化视图站点为每个复制表或者视图建立一个对应的表保存相应的数据,该表只能通过Oracle的复制机制进行增删改数据的操作。
6. 快速刷新、完全刷新和强制刷新:复制过程中的三种刷新方式。快速刷新只复制源数据对象的改变部分;完全刷新每次都拷贝一遍源数据对象;强制刷新是数据库的一个折衷方案,如果快速刷新失败则使用完全刷新。
7. 主体组(Master Group):主体站点中被复制的源数据对象的集合。
8. 实体化视图组(Materialized View Site):实体化视图站点中复制对象的集合。
9. 实体化视图日志(Materialized View Log):实体化视图复制中使用快速刷新时记录主体源数据对象操作日志的表。
进行复制
配置好本地服务名分别为:上海站点:SH,杭州站点:HZ,武汉站点:WH,北京站点:BJ,进入没有登录的sqlplus,让我们开始复制。
一.设置主站点:
这里以上海主站点设置为例。
1.连接主站点,创建复制管理员并授予相应的权限,复制管理员是管理整个复制环境并创建复制对象的用户。只有数据管理员可以建立主体组和实体化视图组。
connect system/passwd@SH
create user repadmin identified by repadmin;
begin
dbms_repcat_admin.grant_admin_any_schema(
username=>’repadmin’);
end;
/
grant comment any table to REPADMIN;
grant lock any table to REPADMIN;
后面的两个grant语句使复制管理员可以为任何表建立实体化视图日志。如果想改用户可以使用视图管理器,还需要下面的命令:
grant select any dictionary to REPADMIN;
2.注册传播方,传播方会将主体站点的延迟事务队列推入其他主体站点或者实体化视图站点。
begin
dbms_defer_sys.reGISter_purpagator(username=>’repadmin’);
end;
3.调度清除作业,该作业会定时清除延迟事务队列并用传播方将延迟事务推入其他主体站点或者实体化视图站点。先更换用户:
disconnect;
connect repadmin/repadmin@SH;
begin
dbms_defer_sys.schedule_purge(
next_date=>sysdate,interval=>’sysdate + 1’,delay_seconds=>0);
end;
next_date:下一次执行日期,sysdate表示立即。
interval:间隔时段,sysdate + 1表示间隔一天,sysdate+ 1/24表示间隔一小时
delay_seconds:当延迟队列没有延迟事件时停止被次清除操作的延迟时间。
#p#副标题#e#
4.为实体化视图站点建立复制代理。创建复制代理用户并授予视图接受方权限。复制代理是复制接收方连接主体站点的用户
disconnect;
connect system/passwd@SH;
create user proxy_bjOracle identified by proxy_bjOracle;
begin
dbms_repcat_admin.register_user_repgroup(
user_name=>’proxy_bjOracle,
privilege_type => ’proxy_snapadmin’,list_of_gnames => NULL);
end;
/
grant select_catalog_role to proxy_bjOracle;
5. 创建主体组:
word-wrap: break-wo
关键词标签:数据库基础,Oracle复制
相关阅读 误删Oracle数据库实例的控制文件 为UNIX服务器设置Oracle全文检索 Oracle数据库如何查找删除重复的SQL语句 Oracle导入导出数据库的语法 oracle数据库安装预环境一键处理脚本 oracle常用DBA命令
文章评论查看所有0条评论>>
发表评论提交评论
热门文章
误删Oracle数据库实例的控制文件
利用Oracle分区表来减少磁盘I/O冲突
Oracle数据库优化之数据库磁盘I/O
讲解Oracle复制技术的分布式系统同步应用
刷新Oracle缓存
oracle 8080与TOMCAT默认端口冲突
人气排行 oracle中使用SQL语句修改字段类型-oracle修改SQL语句案例 Oracle中使用alter table来增加,删除,修改列的语法 ORACLE SQL 判断字符串是否为数字的语句 ORACLE和SQL语法区别归纳(1) oracle grant 授权语句 ORACLE修改IP地址后如何能够使用 如何加速Oracle大批量数据处理 Oracle删除表的几种方法 Oracle 10g创建表空间和用户并指定权限 Oracle连接数太多报错-ORA-12516错误 Oracle字符串截取 连接Oracle数据库的Hibernate配置文件
关于我们| 下载帮助| 版权声明| 合作伙伴| 友情连接| 联系我们| 网站地图Copyright © 2007-2026 IT猫扑网 All Rights Reserved. 豫ICP备2026021191号-1 豫公网安备42010145200009号
{ "@context": "https://zhanzhang.baidu.com/contexts/cambrian.jsonld", "@id": "https://www.itmop.com/article/5142.html", "appid": "否", "title": "数据库基础:Oracle复制方法逐步精细(1)-IT猫扑网", "images": ["/e/data/images/notimg.gif"], "description": "{$Excerpt}", "pubDate": "2015-06-28T00:00:00", "upDate": "2015-06-28T00:00:00", "data": { "WebPage": { "pcUrl": "https://www.itmop.com/article/5142.html", "wapUrl": "https://m.itmop.com/article/5142.html", "fromSrc": "IT猫扑网" } } }





