暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

一次oracle ADG主库故障,紧急切换备库

ORACLE DBA LIFE 2021-04-21
1575

1、检查备库的数据库信息

SQL> show parameter name


NAME                                 TYPE        VALUE

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

cell_offloadgroup_name               string

db_file_name_convert                 string      H:\H2DATA, D:\app\Administra

                                                 r\oradata\hydeeh

db_name                              string      hydee

db_unique_name                       string      hydeeadg

global_names                         boolean     FALSE

instance_name                        string      hydeeadg

lock_name_space                      string

log_file_name_convert                string      H:\H2DATA, D:\app\Administra

                                                 r\oradata\hydeeh

processor_group_name                 string


NAME                                 TYPE        VALUE

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

service_names                        string      HYDEEADG

2、当前日志序列为13708

SQL> archive log list

数据库日志模式            存档模式

自动存档             启用

存档终点            e:\arch

最早的联机日志序列     134701

下一个存档日志序列   0

当前日志序列           134708

SQL>

3、查看监控DG视图,接收进程RFS:;LGWR 在134708,恢复进程MPR也是在134708。

SQL> select process,client_process,sequence#,status from v$managed_standby;


PROCESS   CLIENT_P  SEQUENCE# STATUS

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

ARCH      ARCH         134686 CLOSING

ARCH      ARCH              0 CONNECTED

ARCH      ARCH         134701 CLOSING

ARCH      ARCH         134687 CLOSING

ARCH      ARCH         134702 CLOSING

ARCH      ARCH         134688 CLOSING

ARCH      ARCH         134703 CLOSING

ARCH      ARCH         134689 CLOSING

ARCH      ARCH         134704 CLOSING

ARCH      ARCH         134690 CLOSING

ARCH      ARCH         134705 CLOSING


PROCESS   CLIENT_P  SEQUENCE# STATUS

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

ARCH      ARCH         134691 CLOSING

ARCH      ARCH         134706 CLOSING

ARCH      ARCH         134692 CLOSING

ARCH      ARCH         134707 CLOSING

ARCH      ARCH         134693 CLOSING

ARCH      ARCH         134679 CLOSING

ARCH      ARCH         134694 CLOSING

ARCH      ARCH         134680 CLOSING

ARCH      ARCH         134695 CLOSING

ARCH      ARCH         134681 CLOSING

ARCH      ARCH         134696 CLOSING


PROCESS   CLIENT_P  SEQUENCE# STATUS

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

ARCH      ARCH         134682 CLOSING

ARCH      ARCH         134697 CLOSING

ARCH      ARCH         134683 CLOSING

ARCH      ARCH         134698 CLOSING

ARCH      ARCH         134684 CLOSING

ARCH      ARCH         134699 CLOSING

ARCH      ARCH         134685 CLOSING

ARCH      ARCH         134700 CLOSING

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE


PROCESS   CLIENT_P  SEQUENCE# STATUS

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

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE


PROCESS   CLIENT_P  SEQUENCE# STATUS

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

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE


PROCESS   CLIENT_P  SEQUENCE# STATUS

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

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

RFS       LGWR         134708 IDLE

RFS       UNKNOWN           0 IDLE

RFS       UNKNOWN           0 IDLE

MRP0      N/A          134708 APPLYING_LOG


已选择61行。


4、standby日志组在134708也处于激活状态

SQL> select group#,thread#,sequence#,archived,status from v$standby_log;


    GROUP#    THREAD#  SEQUENCE# ARC STATUS

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

         4          1          0 NO  UNASSIGNED

         5          1     134708 YES ACTIVE

         6          1          0 NO  UNASSIGNED

         7          1          0 NO  UNASSIGNED


SQL>


5、查看standby 数据库处于 NOT ALLOWED状态。

SQL> select open_mode,switchover_status,protection_mode from v$database;


OPEN_MODE            SWITCHOVER_STATUS    PROTECTION_MODE

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

READ ONLY WITH APPLY NOT ALLOWED          MAXIMUM PERFORMANCE



6、取消日志应用

SQL> alter database recover managed standby database cancel;


数据库已更改。


SQL> select switchover_status from v$database;


SWITCHOVER_STATUS

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

NOT ALLOWED


7、检查最近的一次的stanby_log的日期,与客户沟通(为主库的RAID损坏时间差不多)。


SQL> select to_char(last_change#),to_char((last_time),'YYYY-MM-DD HH24:MI:SS')  from v$standby_log;


TO_CHAR(LAST_CHANGE#)                    TO_CHAR((LAST_TIME)

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


15911103495613                           2018-07-23 17:37:10


8、停止备库的自动恢复状态,检查switchover_status(为TO PRIMARY)

SQL> alter database recover managed standby database finish;


数据库已更改。


SQL> select database_role,switchover_status from v$database;


DATABASE_ROLE    SWITCHOVER_STATUS

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

PHYSICAL STANDBY TO PRIMARY


9、使备库切换成主库

SQL> alter database commit to switchover to primary;


数据库已更改。


SQL> select database_role,switchover_status from v$database;


DATABASE_ROLE    SWITCHOVER_STATUS

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

PRIMARY          NOT ALLOWED


SQL> select database_role,switchover_status,open_mode from v$database;


DATABASE_ROLE    SWITCHOVER_STATUS    OPEN_MODE

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

PRIMARY          NOT ALLOWED          MOUNTED


SQL> alter database open;


数据库已更改。


SQL> select database_role,switchover_status,open_mode from v$database;


DATABASE_ROLE    SWITCHOVER_STATUS    OPEN_MODE

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

PRIMARY          FAILED DESTINATION   READ WRITE

10、重启下数据库,确保数据库是否真正OK。

SQL> shutdown immediate;

数据库已经关闭。

已经卸载数据库。

ORACLE 例程已经关闭。

SQL>

SQL>

SQL> startup

ORACLE 例程已经启动。


Total System Global Area 1.0689E+11 bytes

Fixed Size                  2293856 bytes

Variable Size            6.3619E+10 bytes

Database Buffers         4.3218E+10 bytes

Redo Buffers               55214080 bytes

数据库装载完毕。

数据库已经打开。

SQL> show parameter name


NAME                                 TYPE        VALUE

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

cell_offloadgroup_name               string

db_file_name_convert                 string      H:\H2DATA, D:\app\Administrato

                                                 r\oradata\hydeeh

db_name                              string      hydee

db_unique_name                       string      hydeeadg

global_names                         boolean     FALSE

instance_name                        string      hydeeadg

lock_name_space                      string

log_file_name_convert                string      H:\H2DATA, D:\app\Administrato

                                                 r\oradata\hydeeh

processor_group_name                 string


NAME                                 TYPE        VALUE

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

service_names                        string      HYDEEADG

SQL>


最后修改时间:2021-04-21 15:36:09
文章转载自ORACLE DBA LIFE,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论