SQL> alter database open read only;
alter database open read only
*
ERROR at line 1:
ORA-10458: standby database requires recovery
ORA-01152: file 1 was not restored from a sufficiently old backup
ORA-01110: data file 1: '/oracle/oradata/BSTYLE/system.309.766573511'



alter.log有报错

Error 12154 received logging on to the standby


发生背景:

做dataguard,备库RMAN同步后alter database open read only发现起不来。rman过程并没有报错,启动备库的时候看alter.log有一堆Error 12154 received logging on to the standby,再看主库alter.log,也有一堆Error 12154 received logging on to the standby


这说明什么呢,说明archivelog归档到备库的路径是失败的,归档不成功!但是主库sqlplus连备库,或备库连接主库都是正常的!为什么归档不行呢?


SQL> select error from v$archive_dest;


ERROR
-----------------------------------------------------------------

ORA-12154: TNS:could not resolve the connect identifier specified


I could tnsping the STANDBY from production


Dataguard中archive_dest_2是用来指向备库的,负责将归档日志传到备库,检查配置参数


DATAGUAR备库无法OPEN报ORA-10458:ORA-01152:ORA-01110_第1张图片

注意dest_2中service=这里应该和tnsnames中定义备库的是一样的,如下图。

DATAGUAR备库无法OPEN报ORA-10458:ORA-01152:ORA-01110_第2张图片



我这里就是因为设置的不一样导致归档传出过去。改成一样的后一切OK!!!