ORA-01578和ORA-26040--NOLOGGING操作引起的坏块-错误解释和解决方案(文档ID 1623284.1)

  ORA-01578和ORA-26040--NOLOGGING操作引起的坏块-错误解释和解决方案(文档ID 1623284.1)

 



(一)NOLOGGING操作引起的坏块(ORA-01578ORA-26040)简介

如果只是错误ORA-01578,而没有伴随ORA-26040,那么这个坏块是由其它的原因引起的坏块,可以尝试使用RMANBMRBlock Media Recovery)修复。

如果数据段(表段、索引段)被定义为NOLOGGING属性,那么当NOLOGGINGAPPENDUNRECOVERABLE操作修改该数据段或者使用数据泵(DATAPUMPimpdp参数DISABLE_ARCHIVE_LOGGING:Y时,联机重做日志只会记录很少的日志信息。如果这些联机重做日志或归档日志被用来恢复数据文件,那么Oracle会将对应的数据块标志为无效(Soft Corrupt),而且下一次访问这些数据块时,会报ORA-01578ORA-26040错误。

例如:

SQL> select * from test_nologging;

 

ORA-01578: ORACLE data block corrupted (file # 11, block # 84)

ORA-01110: data file 4: '/oradata/users.dbf'

ORA-26040: Data block was loaded using the NOLOGGING option

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wsfpsp.html