Oracle Process Architecture: Checkpoint Process and the Database Writer
Posted: Tue Jan 28, 2025 3:23 am
Since data record changes in blocks are first logged in the redo log files and not written directly to the database, there must come a time when the changed blocks are transferred from the database buffer cache to the database. Since the block addresses of the changed blocks are in the dirty list, the background process, the database writer, can identify these blocks and write them to the database.
When this background process writes changed blocks to the database depends on various factors. Among other things, Oracle has rules and some parameters that force the writing back of changed blocks.
Fig.7: Writing the changed blocks back to the database. © Marek Adar
Fig.7: Writing the afghanistan telegram screening changed blocks back to the database. © Marek Adar
However, it is important that a writeback is carried out before a redo log file whose logged changes have not yet been transferred to the database is overwritten again. This must therefore be done at the latest when switching back from the last to the first redo log file.
When the block changes have been written back by the database writer, an additional background process - the so-called checkpoint process - is started, which writes the last system change number of the database into the headers of all database files and the control file. Oracle can use this number to determine the current status of the database. This is necessary and important for a database recovery process. Writing the changed blocks back into the database and updating the data files and control file with the system change number is also known as a checkpoint.
When this background process writes changed blocks to the database depends on various factors. Among other things, Oracle has rules and some parameters that force the writing back of changed blocks.
Fig.7: Writing the changed blocks back to the database. © Marek Adar
Fig.7: Writing the afghanistan telegram screening changed blocks back to the database. © Marek Adar
However, it is important that a writeback is carried out before a redo log file whose logged changes have not yet been transferred to the database is overwritten again. This must therefore be done at the latest when switching back from the last to the first redo log file.
When the block changes have been written back by the database writer, an additional background process - the so-called checkpoint process - is started, which writes the last system change number of the database into the headers of all database files and the control file. Oracle can use this number to determine the current status of the database. This is necessary and important for a database recovery process. Writing the changed blocks back into the database and updating the data files and control file with the system change number is also known as a checkpoint.