点击(此处)折叠或打开
-
ORA-01578: ORACLE data block corrupted (file # 10, block # 514)
-
ORA-01110: data file 3: '+data/Matrix_DR0/datafile/users.278.56783987'
- ORA-26040: Data block was loaded using the NOLOGGING option
在Standby数据库上,
1. 停止应用重做
点击(此处)折叠或打开
- ALTER DATABASE RECOVER MANAGED STANDBY DATABASE CANCEL;
点击(此处)折叠或打开
- ALTER DATABASE DATAFILE <name> OFFLINE DROP;
点击(此处)折叠或打开
- ALTER DATABASE RECOVER MANAGED STANDBY DATABASE [using current logfile] DISCONNECT;
4. 用RMAN备份受影响的数据文件,并复制到Standby数据库,替换受影响的文件。
5. 停止应用重做数据,脚本同(1)
6. 使之前离线的数据文件重新在线:
点击(此处)折叠或打开
- ALTER DATABASE DATAFILE <NAME> ONLINE;
无日志操作能加快写入速度,如果确有实际需求,考虑下列几种不同的强制级别:
1)数据库级别:
点击(此处)折叠或打开
- ALTER DATABASE FORCE LOGGING;
点击(此处)折叠或打开
- ALTER TABLESPACE <NAME> FORCE LOGGING;
3)表级别:不推荐!
检查是否有无日志操作
在Primary数据库上主动检查:
点击(此处)折叠或打开
-
SELECT NAME, UNRECOVERABLE_CHANGE#,
-
TO_CHAR(UNRECOVERABLE_TIME,'DD-MON-YYYY HH:MI:SS')
- FROM V$DATAFILE;
NAME
--------------------------------------------------------------------------------
UNRECOVERABLE_CHANGE# TO_CHAR(UNRECOVERABLE_TIME,'DD-MON-YYYYHH:MI:SS')
--------------------- ----------------------------------------------------------
/oradata/shanghai/users01.dbf
0
/oradata/shanghai/soe01.dbf
1170680 22-DEC-2014 01:39:28
在Standby数据库,可用dbv工具检查数据文件
点击(此处)折叠或打开
- dbv file=soe01.dbf
点击(此处)折叠或打开
-
DBV-00201: Block, DBA 223776, marked corrupt for invalid redo application
-
-
DBV-00201: Block, DBA 223777, marked corrupt for invalid redo application
-
-
DBV-00201: Block, DBA 223778, marked corrupt for invalid redo application
-
- DBV-00201: Block, DBA 223779, marked corrupt for invalid redo application