For many types of operations, Oracle Database uses the buffer cache to store data blocks read from disk. Oracle Database bypasses the buffer cache for particular operations, such as sorting and parallel reads.
The “buffer cache”:
- caches the physical blocks read (hold a copies of the data blocks of the data files)
- is shared by all concurrent process
alter system flush buffer_cache
Many people think that they must flush the buffer cache before tuning, to emulate the real world.
Flushing the buffer cache gets rid of tons of information that rightly would be there in a production environment when you run the query.