网管联盟 | 网管论坛 | 网管u家 | 网管博客 | 网管软件 | 网管求职 | 小游戏 | 网管搜索 | 网管原创 | 网管聚合 | 网管读摘 | 网管焦点 | 世界素材 | 会员投稿 | 会员中心 
中国网管联盟
Windows Linux Cisco 网络技术 数据库 黑客攻防 DotNet Java PHP 认证 新闻资讯 服务器 存储资讯 网络设备 网管学堂 技术专题 焦点 网吧频道
 当前位置: > bitsCN.com > 数据库技术 > Oracle > 开发技术 > 使用Oracle数据库高级复制中最简单的功能-开发技术  

使用Oracle数据库高级复制中最简单的功能-开发技术

2008-06-14  作者:bitsCN整理  来源:中国网管联盟  点评 投稿 收藏

        前言 网管bitscn_com

        日益增长的分布式应用需求要求实现更好分布式的软件环境,不断推动着分布式技术的进步。Oracle数据复制是实现分布式数据环境的一种技术,通过在不同的物理站点拷贝数据来建立分布式数据环境。它与分布式数据库不同,在分布式数据库中,虽然每个数据对象也对所有的站点可用,但是特定的数据对象只存在于一个特定的站点中。而数据复制实现所有的站点都有相同数据对象的可用拷贝。 网管下载dl.bitscn.com

        在一个典型的分布式商业应用中经常需要把个地区的数据备份到总部的数据库中,一方面可以作为一种备份方式,另一方面也方便总部应用中的综合统计。这是Oracle数据复制中的简单应用,本文将以这样一个例子,讲述如何实现Oracle数据复制。 网管网www.bitscn.com

        实际情况是,A公司总部在北京,有三个营业部分别位于上海(ORACLE.SHANGHAI.COM)、杭州(ORACLE.HANGZHOU.COM)和武汉(ORACLE. 网管u家u.bitsCN.com

        WUHAN.COM)。三个营业部的软件系统相同,数据库结构也相同。现在需要把三个营业部的数据全部备份到总部的数据库中。 中国网管论坛bbs.bitsCN.com

        准备工作

网管联盟bitsCN@com

        在进行复制之前需要准备的东西很多,当然最基础就是网络必须畅通,之后需要收集一些复制环境的基本信息:

网管bitscn_com

        1. 需要复制的数据库站点的数量

中国网管联盟bitsCN.com

        2. 每个站点的Oracle版本号

网管网www_bitscn_com

        3. 每个需要复制的数据库的大小 网管论坛bbs_bitsCN_com

        4. 每个数据库所使用的字符集 中国网管联盟bitsCN.com

        5. 每个需要复制的数据所用的方案名 网管网www.bitscn.com

        收集完环境信息,可以开始建立总部的集中数据库,集中数据库要求版本高于所有主战点的版本,最好所有的数据库都是用相同的字符集。建好库后为每个主站点的备份数据分别建一个表空间,表空间大于需要复制的数据量,至于预留以后的发展空间视实际情况而定。 网管u家u.bitscn@com

        为每个主站点的对应复制数据建立方案,如果各个主站点所使用的方案名不同,在集中数据库站点分别建立名称相同的对应方案。否则为各主站点的复制数据分别建立相应的方案名。实际情况是后者,各营业部的数据库都是用Oracle的方案名,这里我们建立三个对应方 网管网www_bitscn_com

        案:SHORACL、HZORACL 和WHORACL。所有数据库的版本都是9i。 网管网www.bitscn.com

        基本概念 网管网www_bitscn_com

        复制之前先解释一下复制中的几个概念: 网管网www_bitscn_com

        1.主站点(Mater Site):在复制过程中提供数据源的站点。如上图中的上海数据库站点。 网管网www_bitscn_com

        2.实体化视图站点(Materialized View Site):实体化视图复制中的目标站点。如上图中的北京数据库站点。 网管u家u.bitscn@com

        3.多主体站点复制(Multimaster Replication):复制环境中的站点都是主站点,对复制的数据库对象有相同的管理权限。

网管联盟bitsCN@com

        4.实体化视图复制(Materialized View Replication): 一个主体站点提供源复制对象,一个实体化视图站点拷贝主站点数据。 网管bitscn_com

        5.实体化视图(Materialized View):在实体化视图站点为每个复制表或者视图建立一个对应的表保存相应的数据,该表只能通过Oracle的复制机制进行增删改数据的操作。 网管bitscn_com

        6. 快速刷新、完全刷新和强制刷新:复制过程中的三种刷新方式。快速刷新只复制源数据对象的改变部分;完全刷新每次都拷贝一遍源数据对象;强制刷新是数据库的一个折衷方案,如果快速刷新失败则使用完全刷新。 网管网www.bitscn.com

        7. 主体组(Master Group):主体站点中被复制的源数据对象的集合。

中国网管联盟bitsCN.com

        8. 实体化视图组(Materialized View Site):实体化视图站点中复制对象的集合。 网管u家u.bitsCN.com

        9. 实体化视图日志(Materialized View Log):实体化视图复制中使用快速刷新时记录主体源数据对象操作日志的表。 网管论坛bbs_bitsCN_com

        同步复制和异步复制就不解释了,本例采用每天一次的异步复制。 网管联盟bitsCN@com

        进行复制 网管bitscn_com

        配置好本地服务名分别为:上海站点:SH,杭州站点:HZ,武汉站点:WH,北京站点:BJ,进入没有登录的sqlplus,让我们开始复制! 中国网管论坛bbs.bitsCN.com

        一.设置主站点 网管u家u.bitsCN.com

        这里以上海主站点设置为例。

网管网www.bitscn.com

        1.连接主站点,创建复制管理员并授予相应的权限,复制管理员是管理整个复制环境并创建复制对象的用户。只有数据管理员可以建立主体组和实体化视图组。

        connect system/passwd@SH 中国网管论坛bbs.bitsCN.com

        create user repadmin identified by repadmin; 中国网管联盟bitsCN.com

        begin

网管联盟bitsCN_com

        dbms_repcat_admin.grant_admin_any_schema(

中国网管论坛bbs.bitsCN.com

        username=>’repadmin’);

网管下载dl.bitscn.com

        end; 网管联盟bitsCN@com

        / 网管网www.bitscn.com

        grant comment any table to REPADMIN; 中国网管联盟bitsCN.com

        grant lock any table to REPADMIN;

网管u家u.bitscn@com

网管u家u.bitsCN.com

        后面的两个grant语句使复制管理员可以为任何表建立实体化视图日志。如果想改用户可以使用视图管理器,还需要下面的命令:

         grant select any dictionary to REPADMIN;
网管网www_bitscn_com

        2.注册传播方,传播方会将主体站点的延迟事务队列推入其他主体站点或者实体化视图站点。

        begin

网管下载dl.bitscn.com

        dbms_defer_sys.register_purpagator(username=>’repadmin’);

网管网www.bitscn.com

        end; 中国网管论坛bbs.bitsCN.com

网管联盟bitsCN@com

网管网www.bitscn.com


TAGs   简单   功能   复制   高级   数据库   使用       >   站点   数据      
 上一篇:用Oracle数据库高级复制中最简单的功能-开发技术   下一篇:Oracle数据库中的时间类数据类型小结-开发技术
使用Oracle数据库高级复制中最简单的功能-开发技术 评论:
loading.. 评论加载中…
评论:请自觉遵守互联网相关政策法规,评论不得超过250字。

验证码: 注册用户
本类热门排行:
最新推荐文章:
网管论坛交流: