首页 > 代码库 > 【翻译自mos文章】rman 备份时报:ORA-02396: exceeded maximum idle time

【翻译自mos文章】rman 备份时报:ORA-02396: exceeded maximum idle time

rman 备份时报:ORA-02396: exceeded maximum idle time

参考原文:
RMAN backup faling with ORA-02396: exceeded maximum idle time, please connect again (Doc ID 1446182.1)

适用于:
Oracle Server - Enterprise Edition - Version 11.2.0.1 and later
Information in this document applies to any platform.


症状:
rman 在备份db和归档日志时,报下列的错误:
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of backup plus archivelog command at 03/26/2012 00:19:36
RMAN-03014: implicit resync of recovery catalog failed
RMAN-06004: ORACLE error from recovery catalog database: ORA-02396: exceeded maximum idle time, please connect again
ORACLE error from recovery catalog database: ORA-01012: not logged on
Process ID: 4060
Session ID: 24 Serial number: 23229


原因:
ORA-02396最有可能是 profile(with IDLE_TIME)导致的,该profile是指  Recovery Catalog 中的catalog owner

当执行rman备份的时候, rman 跟  Recovery Catalog  极少甚至不通信。
只有当rman备份完成后,相关的信息被从控制文件同步到 Recovery Catalog ,此时,rman 尝试更新 Recovery Catalog ,然后错误就产生了。

rman备份用的时间超过了 the catalog user‘s profile 中定义的idle_time,因此错误就出现了。

解决方案:
检查recovery catalog owner  是否在使用 IDLE_TIME 的profile。 如果使用了,禁用掉或者增大idle_time到更大的值

SQL> select * from dba_profiles where resource_name=‘IDLE_TIME‘;

SQL> select profile from dba_users where username=‘<USERNAME OF CATALOG OWNER>‘;

If the profile of the user matches the profile with a IDLE_TIME <> UNLIMITED, you should consider using a different profile for this user with IDLE_TIME=UNLIMITED.

SQL> alter user xx PROFILE < name of a profile> with IDLE_TIME=UNLIMITED >