`

dataguard物理主备库切换错误记录

阅读更多

登陆primary数据库,查询v$database视图的switchover_status列。

    E:\ora10g>set oracle_sid=geo1pri

    E:\ora10g>sqlplus "/ as sysdba"

    SQL*Plus: Release 10.2.0.3.0 - Production on  星期四 12月 13 09:41:29 2007

    Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.

    已连接。

    SQL>  select switchover_status from v$database;

    SWITCHOVER_STATUS

    --------------------

    TO STANDBY

  如果该列值为"TO STANDBY"则表示primary数据库支持转换为standby角色,否则的话你就需要重新检查一下Data Guard配置,比如看看LOG_ARCHIVE_DEST_n之类参数值是否正确有效等等。

2、 启动switchover  --primary数据库操作

  首先将primary转换为standby的角色,通过下列语句:

    SQL>  alter database commit to switchover to physical standby;

    数据库已更改。

  语句执行完毕后,primary数据库将会转换为standby数据库,并自动备份控制文件到trace。

3、 重启动到mount  --原primary数据库操作

    SQL>  shutdown immediate

    ORA-01507:  未装载数据库

    ORACLE  例程已经关闭。

    SQL>  startup mount

    ORACLE  例程已经启动。

    Total System Global Area  167772160 bytes

    Fixed Size                  1289484 bytes

    Variable Size             104858356 bytes

    Database Buffers           54525952 bytes

    Redo Buffers                7098368 bytes

    数据库装载完毕。

4、 检查是否支持switchover操作   --待转换standby数据库操作

  待原primary切换为standby角色之后,检查待转换的standby数据库switchover_status列,看看是否支持角色转换。

    E:\ora10g>set oracle_sid=ge01standby

    E:\ora10g>sqlplus " / as sysdba"

    SQL*Plus: Release 10.2.0.3.0 - Production on  星期四 12月 13 10:08:15 2007

    Copyright (c) 1982, 2006, Oracle.  All Rights Reserved.

    已连接。

    SQL> select switchover_status from v$database;

    SWITCHOVER_STATUS

    --------------------

    TO PRIMARY

    SQL>

  此时待转换standby数据库switchover_status列值应该是"TO_PRIMARY",如否则检查其初始化参数文件中的设置,提示一下,比着原primary数据库的初始化参数改改。

5、 转换角色到primary  --待转换standby数据库操作

  通过下列语句转换standby到primary角色:

    SQL> alter database commit to switchover to primary;

    数据库已更改。

  注意:待转换的物理standby可以处于mount模式或open read only模式,但不能处于open read write模式。

6、 完成转换,打开新的primary数据库

    SQL> alter database open;

    数据库已更改。

  注:如果数据库处于open read-only模式的话,需要先shutdown然后直接startup即可。

7、 验证一下

  新的primary数据库

    SQL> show parameter db_unique

    NAME                                 TYPE        VALUE

    ------------------------------------ ----------- ------------------------------

    db_unique_name                       string      jsspdg

    SQL> select max(sequence#) from v$archived_log;

    MAX(SEQUENCE#)

    --------------

                67

    SQL>  alter system switch logfile;

    系统已更改。

    SQL> select max(sequence#) from v$archived_log;

    MAX(SEQUENCE#)

    --------------

                68

  新的standby数据库

    SQL> show parameter db_unique

    NAME                                 TYPE        VALUE

    ------------------------------------ ----------- ------------------------------

    db_unique_name                       string      jssweb

    SQL>  select max(sequence#) from v$archived_log;

    MAX(SEQUENCE#)

    --------------

                68

      转换成功。

 

 

在切换中发生一个错误,通过google查到错误的原因,切换到primary db是需要介质恢复

 

SQL> select switchover_status from v$database;

SWITCHOVER_STATUS
--------------------
SWITCHOVER LATENT

SQL> alter database commit to switchover to primary;
alter database commit to switchover to primary
*
ERROR at line 1:
ORA-16139: media recovery required


SQL> alter database commit to switchover to primary;
alter database commit to switchover to primary
*
ERROR at line 1:
ORA-16139: media recovery required


SQL> alter database recover managed standby database disconnect from session;

Database altered.

SQL> alter database commit to switchover to primary;

Database altered.

SQL> alter database open;

Database altered.

SQL> select max(sequence#) from v$archived_log;

MAX(SEQUENCE#)
--------------
            49

SQL> alter system switch logfile;

System altered.

SQL> select max(sequence#) from v$archived_log;

MAX(SEQUENCE#)
--------------
            50

 

分享到:
评论

相关推荐

    Oracle 11g R2 to DataGuard实施方案.doc

    2.2 配置/etc/sysconfig/network 文件(主备库配置) 更新网络配置文件,确保网络参数如主机名、IP地址和子网掩码正确无误。 2.3 配置 listener.ora 文件(主备库配置) 在listener.ora文件中添加主库和备库的监听器...

    Oracle DataGuard 11g完全参考手册(原版电子档).zip

    - Switchover是在计划内改变主备角色,而Failover是由于主数据库故障而进行的紧急角色切换。 9. **Redo Apply和SQL Apply**: - Redo Apply用于物理standby,应用redo日志记录;SQL Apply用于逻辑standby,解析和...

    dataguard reference

    物理备用数据库是Data Guard配置的一种类型,它与主数据库完全同步,记录了主数据库的所有事务。当主数据库发生故障时,物理备用数据库可以快速接管,确保业务连续性。以下是对Oracle Data Guard和物理备用数据库...

    oracle 多网卡dataguard

    在实施多NIC的Data Guard环境中,需要为每个数据库实例(主库和备库)分配一个独立的网络接口。这些接口应配置为不同的子网,以避免网络冲突。此外,网络配置应确保即使在一个网络出现问题时,redo日志的传输和监控...

    Oracle_RAC+ASM+DataGuard配置实验记录+常见问题

    ### Oracle_RAC+ASM+DataGuard配置实验记录与常见问题 #### 一、环境规划 在进行Oracle RAC (Real Application Clusters) + ASM (Automatic Storage Management) + DataGuard 的配置之前,首先需要对环境进行规划...

    DataGuard_Tuning

    - **主数据库**:主数据库负责接收事务请求并记录日志。 - **备用数据库**:备用数据库接收并应用来自主数据库的日志,保持数据同步。 - **Broker**:协调主数据库和备用数据库之间的通信。 - **EM Data Guard ...

    dataguard 图文手册

    - **Switchover/Failover**:在必要时可安全地将角色从主库切换到备库。 5. **Logical Standby Databases**: - 不是数据文件的简单副本,而是通过SQL Apply处理redo日志,适用于需要进行复杂转换或分析的场景。 ...

    dataguard broker配置参考

    Data Guard Broker中的FSFO特性记录了故障切换的相关信息,如等待时间和其他特定属性,以便在故障发生时能够快速响应。此外,Oracle数据库的闪回数据库功能在FSFO中扮演关键角色,它利用闪回日志提供即时恢复能力。...

    Win8下DG物理Standby搭建

    - **Standby库状态切换**: - **查询状态**:使用`select * from v$database`检查数据库状态。 - **验证archive log**:通过SQL查询验证归档日志接收和应用情况。 - **管理模式**:在需要时,启动到NOMOUNT或...

    ORACLE LINUX 11G RAC 单实例DATAGUARD.docx

    这意味着每次数据库更改都会被记录并存储在归档日志中,以便在目标库上进行同步。 参数配置: 在源库上,需要设置一系列参数以确保Data Guard的正确配置。例如,LOG_ARCHIVE_DEST_1和LOG_ARCHIVE_DEST_2定义了归档...

    ORACLE RAC数据库配置Dataguard环境(1).doc

    要检查和记录主数据库的主要文件路径,包括数据文件(v$datafile)、临时文件(v$tempfile)和重做日志文件(v$Logfile)。这些信息在创建备用数据库时至关重要,确保文件能正确复制到备用数据库。 接下来,我们将...

    Exadata 使用Data Guard灾难恢复最佳实践

    Data Guard 提供了一系列工具和服务来创建和维护一个或多个备用数据库,这些备用数据库可以防止主数据库因故障、错误或数据损坏而导致的数据丢失。具体实践包括: - **数据保护**:Data Guard 支持最多 30 个备用...

    Oracle 数据库云服务器灾难恢复

    它是 Oracle Database 企业版的一部分,提供了一系列工具和服务,用于创建和维护生产数据库的一个或多个同步副本(即备用数据库),以保护主数据库免受故障、灾难、错误和损坏的影响。 - **数据保护**:DataGuard ...

    oracle搭建DG

    你可以使用`exp`命令进行逻辑备份,或者使用RMAN进行物理备份,具体取决于你的需求和环境。 在主数据库上配置Data Guard后,接下来的步骤是创建和配置备用数据库。这通常涉及将备份恢复到备用服务器,并使用redo...

    Oracle数据库规划设计和运行维护方案.docx

    - **双机热备模式(HA模式)**:通过主备两台机器实现数据同步,主节点故障时自动切换至备用节点,确保业务连续性。 - **集群模式(RAC)**:多个实例共享一套数据库文件,提高并发处理能力和数据冗余度。 - **主从...

    [Oracle] Data Guard 之 浅析Switchover与Failover

    当主数据库由于硬件故障、软件错误或其他不可预见的问题无法正常工作时,Standby 数据库自动或手动转换为 Primary,以保持服务连续性。然而,由于Failover通常发生在Primary不可用的情况下,如果Standby配置为最高...

    oracle恢复文档

    Oracle数据库的备份是为了防止数据丢失,而恢复则是将数据库从错误状态恢复到正常工作状态的过程。Oracle提供了多种备份类型,包括物理备份(如数据文件、控制文件的备份)和逻辑备份(如SQL*Loader、EXPDP/IMPDP...

    Oracle_11g_面向DBA的新功能学习指南 less13

    这意味着即使主数据库出现数据故障,也可以通过切换到备用数据库继续业务运营,同时对出现问题的数据库进行修复,而无需担心对应用程序的影响。在 Oracle 11g 中,DataGuard 进行了多项改进,增强了其稳定性和易用性...

    sql面试题\oracle面试题目

    - **Physical Standby**:实时复制主数据库的所有变化。 - **Logical Standby**:可以应用SQL语句而不是物理变化。 #### 56. 执行计划及其查看方式 - 执行计划展示了查询如何被执行。 - 使用`EXPLAIN PLAN`或`DBMS_...

Global site tag (gtag.js) - Google Analytics