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记录
可以看到很关键的一条信息:
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.
4、将audit_trail设置为none并重启数据库
alter system set audit_trail=none scope=spfile;
重启以后问题解决。