Recovering After the NOLOGGING Clause Is Specified

Some SQL statements allow you to specify a NOLOGGING clause so that the operation is not logged in the online redo log file.

In actuality, when you specify NOLOGGING, a redo record is still written to the online redo log file, but there is no data associated with the record. This specification can result in log application or data access errors at the standby site. Manual recovery might be required to resume applying log files. Depending on whether you have a logical standby or physical standby, you can avoid these errors by doing the following:

  • Logical standbys

    Specify the FORCE LOGGING clause in the CREATE DATABASE or ALTER DATABASE statements.

  • Physical standbys

    Specify a logging mode that is appropriate to the way in which you plan to use your Data Guard configuration.

    See Enable an Appropriate Logging Mode.

You can see the current logging mode in the V$DATABASE.FORCE_LOGGING column (for CDBs), or the DBA_PDBS.FORCE_LOGGING column (for PDBs).