`
javayestome
  • 浏览: 1050996 次
  • 性别: Icon_minigender_2
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

高级复制中如何应对主体站点故障

阅读更多

高级复制中如何应对主体站点故障

作者:eygle

出处:http://blog.eygle.com

日期:February 18, 2005

« 在高级复制中如何切换主体定义站点 | Blog首页 | 自己动手,丰衣足食 »


在同步复制中
一旦任意主体站点出现故障,数据库将会出现问题。

SQL> select * from scott.dept;

DEPTNO DNAME          LOC
------ -------------- -------------
    10 ACCOUNTING     NEW YORK
    20 RESEARCH       DALLAS
    30 SALES          CHICAGO
    40 OPERATIONS     BOSTON
    33 ORACLE         beijing
    35 Oracle         Beijing

6 rows selected

SQL> 

此时DML操作不能进行
SQL> insert into scott.dept values (36,'Oracle','Beijing');

insert into scott.dept values (36,'Oracle','Beijing')

ORA-02068: following severe error from TESTORA9
ORA-03113: end-of-file on communication channel
ORA-02068: following severe error from TESTORA9
ORA-03113: end-of-file on communication channel

SQL> select gname,dblink,masterdef from dba_repsites;

GNAME                          DBLINK                  MASTERDEF 
------------------------------ ----------------------------------
REP_TT                         CONNER.HURRAY.COM.CN    Y         
REP_TT                         TESTORA9.HURRAY.COM.CN  N         

简单的,我们可以移除出问题的主体站点
SQL> exec dbms_repcat.remove_master_databases(gname => 'rep_tt',master_list => 'TESTORA9.HURRAY.COM.CN');

PL/SQL procedure successfully completed

此后DML操作可以继续:
SQL> insert into scott.dept values (36,'Oracle','Beijing');

1 row inserted

SQL> COMMIT;

Commit complete

SQL> select gname,dblink,masterdef from dba_repsites;

GNAME                          DBLINK                  MASTERDEF 
------------------------------ ----------------------------------
REP_TT                         CONNER.HURRAY.COM.CN    Y         

如果故障站点修复之后,需要重新加入复制组,可以先在故障站点删除复制组:
SQL> exec dbms_repcat.drop_master_repgroup(gname => 'rep_tt',drop_contents => false,all_sites => false)

PL/SQL procedure successfully completed

然后在主体定义站点重新加入该主体站点:
SQL> exec dbms_repcat.suspend_master_activity(gname => 'rep_tt')

PL/SQL procedure successfully completed

SQL> execute dbms_repcat.add_master_database(gname=>'rep_tt',
     master=>'TESTORA9.HURRAY.COM.CN',use_existing_objects=>true, 
     copy_rows=>false, propagation_mode => 'synchronous');

PL/SQL procedure successfully completed

SQL> execute dbms_repcat.resume_master_activity('rep_tt',true);

PL/SQL procedure successfully completed

SQL> 

此时复制恢复正常。
接下来你需要解决的是数据冲突,可以参考:使用 dbms_rectifier_diff解决高级复制中的数据冲突问题
分享到:
评论

相关推荐

    Oracle之高级复制技术初探.pdf

    总之,Oracle的高级复制技术是应对分布式数据库环境中数据共享和一致性的有效解决方案。无论是同步还是异步复制,或者多主体复制和物化视图复制,都是为了实现数据的安全、一致和高效传输,同时提供负载均衡和数据...

    oracle高级复制应用实例

    3. **用户一致性**:在高级复制中,所有物化视图站点和主体复制站点的用户名必须一致,这是为了确保复制过程中权限和身份验证的一致性。这意味着在不同数据库间进行复制操作时,需要使用相同的用户账户。 4. **对象...

    oracle高级复制、同步

    - **计划链接(Scheduled Links)**:用于将更新事务推送到其他主体站点的数据库链接,创建时会在本地任务队列中创建一个任务。 - **主体定义站点(Master Definition Site)**:大部分高级复制配置都在此站点完成。 ...

    Oracle9i高级复制在综合网管中的应用研究.pdf

    Oracle9i高级复制技术在综合网管系统中的应用研究,主要关注如何利用Oracle数据库的分布式特性和高级复制功能,以解决复杂网络环境中数据的实时同步和一致性问题。综合网管系统是一个分布式应用,由多个子网管系统...

    Oracle 高级复制配置手册

    通过以上步骤,我们已经成功配置了Oracle 高级复制中的 Materialized View Replication 模式。这种方式不仅能够确保数据的一致性,还能够在多个复制站点之间提供高效的数据同步。此外,还可以根据实际需求进一步优化...

    基于Oracle高级复制的联网售票系统数据库设计.pdf

    Oracle高级复制是Oracle数据库提供的一种强大工具,用于在分布式环境中同步和管理数据。这种复制技术分为两种主要类型:实体化视图复制和多主体复制。 1. **实体化视图复制**:它允许在一个或多个实体化视图站点上...

    ORACLE 10G 高级复制 参考手册

    Oracle 10G 高级复制是Oracle数据库中一种强大的数据同步和灾难恢复技术,它允许数据在多个数据库之间实时或近实时地进行复制。在Oracle 10G中,高级复制提供了高度灵活和可定制的数据复制解决方案,适用于分布式...

    浅谈基于Oracle高级复制实现数据库同步热备.pdf

    综上所述,通过细致规划和配置,基于Oracle高级复制实现数据库同步热备不仅可以提高数据的可用性和可靠性,还能有效应对各种潜在风险。这不仅需要对Oracle数据库的基本操作有所了解,还需要深入理解高级复制机制的...

    oracle9i高级复制实施手记

    3. **对象修改后的处理**:当对主体复制对象(如表)进行修改,如添加主键,需要从复制主体组中删除该对象,重新加入并重新生成复制支持。这是因为结构变化可能影响复制过程,需要更新复制配置以匹配新的表结构。 4...

    Advanced.Replication.Research.by.Kamus.pdf

    在企业级应用中,为了提高数据的可用性、性能以及实现分布式计算等目标,Oracle 提供了一种名为“高级复制”(Advanced Replication)的技术。该技术利用分布式数据库的概念,使得数据能够在多个站点之间共享。 #####...

    论文研究-基于Oracle10g的实体化视图复制研究 .pdf

    复制组中的主体站点可以进行数据修改,而实体化视图站点则提供数据复制的目标。Oracle10g支持的复制环境类型包括多主体复制环境、实体化视图复制环境,以及二者混合的结构环境。 5. 复制环境的创建步骤:创建Oracle...

    实验6 Oracle的数据库复制技术(自学).doc

    实验的目的是让你理解Oracle复制的概念,并熟悉高级复制的配置和使用。在开始实验前,你需要对分布式环境和复制有一定的了解。 实验环境准备包括Windows操作系统、Oracle 9i数据库以及Oracle 9i企业管理器。实验中...

    oracle10g同步复制实例

    在Red Hat Enterprise Linux Server 5.3上运行的Oracle Database 10g Enterprise Edition Release 10.2.0.4.0中,高级复制功能(Advanced Replication)提供了多种复制类型,包括多主体复制(MultiMaster ...

    Advanced.Replication.Research.pdf

    在企业级应用中,为了提高数据的可用性、性能以及实现分布式计算等目标,Oracle 提供了一种名为“高级复制”(Advanced Replication)的技术。该技术利用分布式数据库技术,在多个站点间共享数据。尽管“复制”与...

    AD6.0实用教程

    安装过程中,理解AD的复制机制和站点设计至关重要,因为它们决定了数据在域控制器间的同步速度和网络流量。 接着,我们将学习如何创建和管理对象,包括用户账户、计算机账户、组和其他安全主体。这些对象构成了AD的...

    解决组策略问题(没有权限执行此操作)的方法

    在IT管理领域,组策略(Group Policy)是Windows操作系统中一项关键的安全与配置管理功能,它允许管理员在域环境中统一设定计算机和用户的各种策略,从而实现对整个网络环境的集中控制与管理。然而,在实际应用过程...

Global site tag (gtag.js) - Google Analytics