Oracle/Databaseprocessen
Waneer een Oracle-instantie gestart wordt, worden er ook een aantal backgroundprocessen gestart waarvan vijf verplichte processen.
Verplichte processen
bewerkenSystem Monitor (SMON)
bewerkenHet System Monitor (SMON)-backgroundproces wordt gestart wanneer de database-instantie gestart wordt en heeft verschillende taken. Het kijkt eerst of de database consistent is door de SCN van de datafileheaders te vergelijken met de SCN van de controlfile. Als dit klopt, wordt de database gestart en dus is de database consistent. Als de SCN niet gelijk is, dan zorgt de SMON voor automatische crashrecovery, wat bestaat uit het forwarden van de redologs en het rollback van de uncommited transacties. Ook worden er verschillende tablespace-operaties uitgevoerd, zoals het coalesces (soort defrag) van vrije extents in nog grotere aan elkaar liggende vrije extents. En het opruimen van tijdelijke segments die niet meer nodig zijn.
Process Monitor (PMON)
bewerkenHet PMON-proces monitort processen en herstart gecrashde databaseprocessen. Wanneer processen crashen, ruimt PMON de boel op. Dit heet ook wel "garbage collection". Dit houdt o.a. in het releasen van locks van gecrashde processen en het vrijmaken van geheugen.
Database Writer (DBWR)
bewerkenDe Database Writer is een Oracle-backgroundproces, dat gestart wordt bij het starten van een Oracle Instance. Het doel van de Database Writer is het schrijven van dirty blocks naar schijf. Dit genereert I/O. Het wegschrijven van dirty blocks gebeurt wanneer de buffercache vol raakt. Aan de hand van een LRU-algoritme worden dirty blocks geselecteerd en weggeschreven in de datafiles. Je kunt in de init.ora tot in totaal 9 DBWR-processen specificeren, als de database zwaar onderhevig is aan updates.
LogWriter (LGWR)
bewerkenDe Log Writer schrijft entries van de redologbuffer naar de redologfiles.
Checkpoint (CKPT)
bewerkenHet Checkpoint-proces zorgt dat de DBWR de dirty blocks wegschrijft en updatet de datafileheaders en controlfiles. Een voordeel is dat de recoverytijd voor een Oracle-database zo verkort wordt.
Overige databasebackgroundprocessen
bewerkenArchiver (ARCH)
bewerkenHet Archiver-proces is alleen aanwezig als de database-instantie ook archivelogging aan heeft staan. Het doel van dit proces is het kopiëren van redologfiles naar een archiveloglocatie. Deze archived redologs, ook wel archives genaamd, kunnen gebruikt worden voor een databaserecovery.