【翻译自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 >