1、使用dgmgrl将数据库设置为只读模式:

DGMGRL>edit database dg_name set state=read-only;
ORA-16753 Resource guard could not open standby database
Cause:Resource guard could not open standby database.
Action:Check the Data Guard console log for further details.

 

2、查看dg日志${bdump}/drc$SID.log记录

wKioL1QZmdKxtevCAAKMzuy3n0w207.jpg

 

可以看到很关键的一条信息:

ORA-16006: audit_trail destination incompatible with database open mode

原来如此,通过show parameter  audit_trail,可以看到audit_trail=db。

 

3、audit_trail参数说明

AUDIT_TRAIL = { none | os | db | db,extended | xml | xml,extended }
db:Directs audit records to the database audit trail (the SYS.AUD$table), except for records that are always written to the operating systemaudit trail. Use this setting for a general database for manageability.
If the database was started in read-onlymode with AUDIT_TRAIL set to db, then Oracle Database internally sets AUDIT_TRAILto os. Check the alert log for details.

详见官网http://docs.oracle.com/cd/B19306_01/server.102/b14237/initparams016.htm或者:http://blog.csdn.net/tianlesoftware/article/details/4712932说明

 

4、将audit_trail设置为none并重启数据库

alter system set audit_trail=none scope=spfile;

 

重启以后问题解决。