ITPub博客

首页 > Linux操作系统 > Linux操作系统 > DG保护模式切换中遇到的ORA-16072错误

DG保护模式切换中遇到的ORA-16072错误

原创 Linux操作系统 作者:anchen211 时间:2009-04-14 17:05:11 0 删除 编辑

DG保护模式切换中遇到的ORA-16072错误

接上文,我接着做保护模式的切换,我想将保护模式由最大性能模式切换为最大保护模式
做法如下:
在主库上:
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount
ORACLE 例程已经启动。

Total System Global Area  612368384 bytes
Fixed Size                  1250428 bytes
Variable Size             255855492 bytes
Database Buffers          348127232 bytes
Redo Buffers                7135232 bytes
数据库装载完毕。
SQL> alter system set log_archive_dest_2='SERVICE=mytest LGWR SYNC AFFIRM VALID_FOR=(ONLINE_LOGFILES,PRIMARY_ROLE) DB_UNIQUE_NAME=mytest' scope=both;

系统已更改。

SQL> alter database set standby database to maximize protection;

数据库已更改。

SQL> alter database open;

此时报错误ORA-16072:需要一个备用数据库目标的最小值

阅读文档后发现是因为昨天在配置的时候没有在从库增加standby redo log.文档中的相关说明如下:

A standby redo log is required for the maximum protection and maximum availability
modes and the LGWR ASYNC transport mode is recommended for all databases. Data
Guard can recover and apply more redo data from a standby redo log than from
archived redo log files alone.

我在从库重新添加了STANDBY REDO LOG
SQL> shutdown immediate
数据库已经关闭。
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup mount
ORACLE 例程已经启动。

Total System Global Area  612368384 bytes
Fixed Size                  1250428 bytes
Variable Size             234883972 bytes
Database Buffers          369098752 bytes
Redo Buffers                7135232 bytes
数据库装载完毕。

SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 4
  2  ('D:\ORACLE\ORADATA\MYTEST\REDO04.LOG') SIZE 50M;

数据库已更改。

SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 5
  2  ('D:\ORACLE\ORADATA\MYTEST\REDO05.LOG') SIZE 50M;

数据库已更改。

SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 6
  2  ('D:\ORACLE\ORADATA\MYTEST\REDO06.LOG') SIZE 50M;

数据库已更改。

SQL> ALTER DATABASE ADD STANDBY LOGFILE GROUP 7
  2  ('D:\ORACLE\ORADATA\MYTEST\REDO07.LOG') SIZE 50M;

数据库已更改。

SQL> SELECT GROUP#,THREAD#,SEQUENCE#,ARCHIVED,STATUS FROM V$STANDBY_LOG;

    GROUP#    THREAD#  SEQUENCE# ARC STATUS
---------- ---------- ---------- --- ----------
         4          0          0 YES UNASSIGNED
         5          0          0 YES UNASSIGNED
         6          0          0 YES UNASSIGNED
         7          0          0 YES UNASSIGNED

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

数据库已更改。

再按以上步骤操作后就OK了。

 

SQL> select DATABASE_ROLE,PROTECTION_MODE,PROTECTION_LEVEL from v$database;

DATABASE_ROLE    PROTECTION_MODE      PROTECTION_LEVEL
---------------- -------------------- --------------------
PHYSICAL STANDBY MAXIMUM PROTECTION   MAXIMUM PROTECTION

 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/9375/viewspace-589026/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2008-11-04

  • 博文量
    129
  • 访问量
    175890