Odi's astoundingly incomplete notes
New entries | CodeMake very sure Oracle uses async IO on Linux
A default installation of Oracle on Linux will use synchronous IO. You have to explicitly enable asynchronous IO by setting a parameter (sic!):
and restart Oracle. If you don't do that then synchronous IO during logfile switches / checkpoints will cause unnecessary waits: log file switch (checkpoint incomplete). At the same time Oracle DBW process will not saturate IO. Your DB will become barely usable during those times.
ALTER SYSTEM SET FILESYSTEMIO_OPTIONS=SETALL SCOPE=SPFILE;
and restart Oracle. If you don't do that then synchronous IO during logfile switches / checkpoints will cause unnecessary waits: log file switch (checkpoint incomplete). At the same time Oracle DBW process will not saturate IO. Your DB will become barely usable during those times.
As this also enables direct writes (which circumvent the OS page cache) you must also ensure that the SGA size is close to the RAM size (70-80%). Do not enable the parameter above for small SGAs (< 4GB).
Add comment