Forced Logging

Database Level Forced Logging ensures all operations are recorded in the Redo Logs.

Operations that will not be logged if logging is not forced and NOLOGGING option is specified:

  • direct load/SQL load

  • direct-path inserts result from insert or merge statement

  • ALTER TABLE commands

  • CREATE and ALTER INDEX commands

  • INSERT /*+APPEND*/

  • partition manipulation

  • database object that has explicitly set with nologging option

Enabling Database Level Forced Logging will override the NOLOGGING option.

Forcing NOLOGGING at the database level is useful for databases using DataGuard or any other tool that relies on log mining (e.g. Infosphere CDC).

Note that in some cases Tablespace Level Forced Logging may be more appropriate.

Check

SELECT force_logging

FROM v$database;

Enable

ALTER DATABASE FORCE LOGGING;

Disable

ALTER DATABASE NO FORCE LOGGING;