Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.server -> SGA Processes
Dear Guru's,
I'd like some advice regarding server SGA processes to get a good basic
understanding as to what happens from when a user session connects to the
database.
I'm familiar with the following but can not visualise what process actually
writes data to the rollback segments, or flushes the data away from the
rollback segment on a commit;
Please correct me where you think my logic may be flawed and/or advise me in the gaps below.
Thanks,
Bhavesh
A user connects to the database via SQL Net Driver.
They request some data for update via a SQL statement and if the SQL is
present within the shared pool then an existing SQL area is used, else a new
shared SQL area is allocated.
The server process retrieves data from cached blocks within the database
buffer cache. (a cache hit) or retrieves the data from the datafile (any
idea of what process actually does this?). I assume at this point a
read-consistent view is also stored within the rollback segment (what server
process does this?).
The DBWR process writes data to disk from the dirty buffers in the Database
buffer cache and the LGWR process records the process from the redo log
buffer pool to the online redo log on commit else the transaction is rolled
back. (I can't figure out which process will roll this back)
DBWR writes to disk when no free buffers are found or a checkpoint occurs.
LGWR writes to online redo on commit, checkpoint or when the redo log buffer
pool is a third full.
ARCH process copies redo log files to disk/tape on a log switch.
Cheers again. Received on Mon Feb 26 2001 - 09:50:33 CST