FULL DATABASE CACHING
Oracle introduces a new Feature called FORCE FULL DATABASE CACHING in 12C (12.1.0.2)
- Oracle may choose to bypass the buffer cache for some operations to prevent useful information being artificially aged out by a large read operation.
- This Feature allows that the DBA can tell the database, that the SGA is big enough to hold the complete database.
- If Oracle determines that the buffer cache is big enough to hold the entire database it will cache all blocks. In addition, full database caching mode can be forced.
1. Enable Force database full caching mode.
Prerequisites:
1. Database in Mount stage.
2. The SGA is big enough to hold the complete database.
3. The database size must be smaller then the BUFFER CACHE size.
4. The TEMP and the SYSAUX Tablespace can be excluded.
Steps for Configure Force database full caching mode.
SQL> ALTER DATABASE FORCE FULL DATABASE CACHING;
ALTER DATABASE FORCE FULL DATABASE CACHING
*
ERROR at line 1:
ORA-01126: database must be mounted in this instance and not open in any
Instance.
To force full database caching,need to do the following.
CONN / AS SYSDBA
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE FORCE FULL DATABASE CACHING;
ALTER DATABASE OPEN;
After that , the change will be visible in the V$DATABASE view.
SELECT force_full_db_caching FROM v$database;
FOR
-------
YES
2. Disable Force Full Database Caching Mode
Disabling force full database caching mode follows a similar format.
CONN / AS SYSDBA
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE NO FORCE FULL DATABASE CACHING;
ALTER DATABASE OPEN;
The change is reflected in the V$DATABASE view.
SELECT force_full_db_caching FROM v$database;
FOR
-------
NO
Note:
- The data blocks are loaded into the buffer cache as they are being accessed.
- Old cached blocks will be flushed when buffer cache is full.
- Recycle buffer can be used for such as audit/log tables.
- Information about force Full Database Caching Mode is stored in the control file, not in pfile or spfile.