今天在测试环境中弄DG的时候出现了ORA-16072: a minimum of one standby database destination is required的报错:
环境如下:OS :RHEL 5.6 X86_64 DB:11.2.0.3.2 (单机)
原来是一个DG环境,由于备库已经损坏了,现在需要删除现有环境中的DG,重新搭建一个新的DG环境。在主库上面删除DG相关的参数、redo与相关的物理文件的。启动主库时就报错。后台日志如下:
ARC0: Archival started
LGWR: STARTING ARCH PROCESSES COMPLETE
ARC0: STARTING ARCH PROCESSES
LGWR: Primary database is in MAXIMUM AVAILABILITY mode
LGWR: Destination LOG_ARCHIVE_DEST_1 is not serviced by LGWR
LGWR: Minimum of 1 LGWR standby database required
Errors in file /usr/app/oracle/diag/diag/rdbms/vcm01_b/vcm01/trace/vcm01_lgwr_2803.trc:
ORA-16072: a minimum of one standby database destination is required
trace文件中的内容如下:
Trace file /usr/app/oracle/diag/diag/rdbms/vcm01_b/vcm01/trace/vcm01_lgwr_2803.trc
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORACLE_HOME = /usr/app/oracle/110203/v01
System name: Linux
Node name: pekdc1-vcm-04
Release: 2.6.18-238.el5
Version: #1 SMP Thu Jan 13 15:51:15 EST 2011
Machine: x86_64
Instance name: vcm01
Redo thread mounted by this instance: 1
Oracle process number: 11
Unix process pid: 2803, image: oracle@pekdc1-vcm-04 (LGWR)
*** 2012-11-06 09:23:30.058
*** SESSION ID:(2267.1) 2012-11-06 09:23:30.058
*** CLIENT ID:() 2012-11-06 09:23:30.058
*** SERVICE NAME:() 2012-11-06 09:23:30.058
*** MODULE NAME:() 2012-11-06 09:23:30.058
*** ACTION NAME:() 2012-11-06 09:23:30.058
Destination LOG_ARCHIVE_DEST_1 is not serviced by LGWR
Standby database verification failed:16072
error 16072 detected in background process
kjzduptcctx: Notifying DIAG for crash event
----- Abridged Call Stack Trace -----
ksedsts()+461<-kjzdssdmp()+267<-kjzduptcctx()+232<-kjzdicrshnfy()+53<-ksuitm()+1332<-ksbrdp()+3344<-opirip()+623<-opidrv()+603<-sou2o()+103<-opimai_real()+266<-ssthrdmain()+252<-main()+201<-__libc_start_main()+244<-_start()+36
----- End of Abridged Call Stack Trace -----
*** 2012-11-06 09:23:30.166
LGWR (ospid: 2803): terminating the instance due to error 16072
ksuitm: waiting up to [5] seconds before killing DIAG(2783)
原因是由于原环境配置了FSFO,数据库在最大可性的模式下面,删除DG,需要修改数据库在最大性能下面。修改语法如下:
sqlplus / as sysdba
SQL> startup mount
SQL> alter database set standby to maximize performance;
SQL> alter database open;
修改后数据库启动正常。
本文转自7343696 51CTO博客,原文链接:http://blog.51cto.com/luoping/1051614,如需转载请自行联系原作者