Block change tracking (BCT) is an oracle feature that improves the performance of incremental backups.
Block change tracking (BCT) in Oracle
Suppose we have a level 0 backup and want to make a level 1 backup. During the level 1 backup, oracle will scan all the blocks from the last level 0 backup and identify those which have been modified. Once this action has been performed, Oracle will save only all of the modified blocks.
Block change tracking (BCT)
With Oracle’s Block Change Tracking (BCT) functionality, you no longer need to scan all blocks from a previous incremental backup. Indeed BCT uses a background process called Change Tracking Writer (CTWR). The role of the CTWR is to track all the modified blocks and then identify them in a tracking file. By default, the BCT function is disabled. That means, oracle does not save block change information.
To check the status of the BCT, please execute the following command :
SQL> select status from v$block_change_tracking; STATUS ---------- DISABLED
Let’s activate block change
SQL> alter database enable block change tracking using file '+DATA';
The “using file” clause specifies the location of the BCT file on the OS. If you omit this clause, the Oracle Managed File (OMF) option will be enabled.
To activate the block change using the OMF option, execute the command below:
SQL> alter database enable block change tracking;
Now, let’s check again the status of the BCT after activation
SQL> col filename format a46 SQL> col status format a12 SQL> select status, filename from v$block_change_tracking; STATUS FILENAME ------------ ---------------------------------------------- ENABLED +DATA/ACHATS/CHANGETRACKING/ctf.288.1027782031
To know the size of the BCT, execute the following command:
SQL> select status, filename, bytes from v$block_change_tracking; STATUS FILENAME BYTES ------------ ---------------------------------------------- ---------- ENABLED +DATA/ACHATS/CHANGETRACKING/ctf.288.1027782031 11599872
To deactivate the block change tracking, execute the following command:
SQL> alter database disable block change tracking;
Do you want to learn more details about RMAN, then Click this Link and read the articles.