恢复数据库hang住/parallel recovery read buffer free

近日某客户在做异机恢复数据库时,restore完成,一直Hang住在recover归档,检查等待事件 parallel recovery read buffer free
出现该等待事件是因为源端数据库设置了不同block size大小的表空间,而目标端并没有设置db_nK_cache_size参数,检查源端 select block_size, count(*) from dba_tablespaces group by block_size;确实设置了16k的表空间,并且db_16k_cache_size设置了256M,在目标端同样设置db_16k_cache_size后recover顺利完成。
MOS文章 文档 ID 1646202.1

CAUSE

Insufficient buffer cache for tablespace with non-default block size.  I.e., db_4k_cache_size, db_8k_cache_size, db_16k_cache_size, db_32k_cache_size are not set or set too low.  For example, running an RMAN duplicate of a target database which contains tablespaces with different block sizes but auxiliary instance does not have the appropriate db_nK_cache_size parameter. 

SOLUTION

Buffer cache blocks must exist for all tablespaces with block sizes <> DB_BLOCK_SIZE 

1.  Check target (or source):  

select block_size, count(*) from dba_tablespaces group by block_size;

2.  For any tablespace with block size NOT the same as db_block_size, set DB_nK_CACHE_SIZE

3.  After correctly setting db_nK_cache_size re-execute the recover or duplicate command


来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10271187/viewspace-2135992/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10271187/viewspace-2135992/

你可能感兴趣的:(恢复数据库hang住/parallel recovery read buffer free)