Problem solve Get help with specific problems with your technologies, process and projects.

Redo log file filled up

What to do when the current redo log file or datafile file gets filled up?

What to do when the current redo log file gets filled up? Or the datafile file gets filled up?
There are two different answers here...

When an online redo log fills up, Oracle automatically performs a log switch and starts writing change vectors to the next redo log group. So Oracle will start writing in group #1 and proceed to the last group. When the last group fills up, Oracle switches back to the first redo log group. Oracle writes to the redo logs in a circular fashion.

If the database is in ARCHIVELOG mode, then the redo log group will not be overwritten until the information in that log group has been written to the archive log destination. At this point, the database hangs until the archiver process (ARCH) has time to write the information to the archived redo logs and clears the online redo logs. For this reason, it is important for the archive log destination to be on disk units fast enough to handle the transaction volume. One must also size the online redo logs large enough so as to space out the log switches to at least every 15 minutes.

If a datafile fills up, the DBA needs to know why. The DBA needs to know which table (or index) is growing to fill up the space. If this growth is expected behavior, the DBA can resize the datafile with the ALTER DATABASE DATAFILE command. Or, the DBA can add another datafile to the tablespace with the ALTER TABLESPACE ADD DATAFILE command. If the growth is from a runaway process, the DBA needs to stop this process so as to control the unwanted data growth.

Dig Deeper on Oracle database backup and recovery