I faced with that errors our 12c database. With those errors MRP process has been stopped at standby database and GAP started to increased
Complete errors are:
Reading datafile '/xxx/datafile/ts_1.dbf' for corruption at rdba: 0x08d6e9fd (file 35, block 1501693) Reread (file 35, block 1501693) found same corrupt data (logically corrupt) Sat Jan 18 17:43:50 2020 ERROR: ORA-00756 detected lost write of a data block Slave exiting with ORA-756 exception Sat Jan 18 17:43:50 2020 Errors in file /u01/app/oracle/diag/rdbms/sid/sid/trace/sid_pr01_74757.trc: ORA-00756: recovery detected a lost write of a data block ORA-10567: Redo is inconsistent with data block (file# 35, block# 1501693, file offset is 3711934464 bytes) ORA-10564: tablespace TS ORA-01110: data file 35: '/xxx/datafile/ts_1' ORA-10561: block type 'TRANSACTION MANAGED INDEX BLOCK', data object# 102109 Sat Jan 18 17:43:50 2020 Recovery Slave PR01 previously exited with exception 756
Here are the solution steps:
1. Start Rman backup for related files at Primary database
rman target / run { ALLOCATE CHANNEL ch1 DEVICE TYPE DISK format '/backup/datafile35_%U.rman'; backup datafile 35; }
2. Copy rman backup to standby server
scp datafile35* oracle@xxx://tmp/helios
3. At Standby db stop apply
SQL>ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
4. Catalog and restore backup at Standby db
oracle@server_name/tmp> rman target / Recovery Manager: Release 12.1.0.2.0 - Production on Sat Jan 18 18:09:52 2020 Copyright (c) 1982, 2014, Oracle and/or its affiliates. All rights reserved. connected to target database: SID (DBID=7223103652, not open) RMAN> catalog start with '/tmp/helios'; using target database control file instead of recovery catalog searching for all files that match the pattern /oradata/gunes List of Files Unknown to the Database ===================================== File Name: /tmp/helios/datafile35_v6uma9kg_1_1.rman Do you really want to catalog the above files (enter YES or NO)? Yes cataloging files... cataloging done List of Cataloged Files ======================= File Name: /tmp/helioss/datafile35_v6uma9kg_1_1.rman RMAN> restore datafile 35; Starting restore at 18-JAN-20 using channel ORA_DISK_1 using channel ORA_DISK_2 channel ORA_DISK_1: starting datafile backup set restore channel ORA_DISK_1: specifying datafile(s) to restore from backup set channel ORA_DISK_1: restoring datafile 00035 to /xxx/datafile/ts_1.dbf channel ORA_DISK_1: reading from backup piece /tmp/gunes/datafile35_v6uma9kg_1_1.rma channel ORA_DISK_1: piece handle=/tmp/gunes/datafile35_v6uma9kg_1_1.rman tag=TAG20200118T175944 channel ORA_DISK_1: restored backup piece 1 channel ORA_DISK_1: restore complete, elapsed time: 00:04:45
5. Start apply at Standby db
SQL>ALTER DATABASE RECOVER MANAGED STANDBY DATABASE USING CURRENT LOGFILE DISCONNECT FROM SESSION; Finished restore at 18-JAN-20