DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤...
Transcript of DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤...
![Page 2: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/2.jpg)
DB - logisch perspectief -
![Page 3: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/3.jpg)
DB - fysisch perspectief -
![Page 4: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/4.jpg)
DBMSFysische details van databank beheren Zodat gebruiker zich enkel om logische perspectief moet bekommeren Vereisten
Snel gegevens vinden, toevoegen,… Integriteit van gegevens (Vertrouwelijkheid, ...)
![Page 5: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/5.jpg)
Belangrijkste componenten
0.4 Architectuur van een DBMS
In figuur 14 worden de verschillende onderdelen van een DBMS getoond. Onderaan is de plaatsvoorgesteld waar de data gestockeerd wordt; gewoonlijk is dit een of meerdere disks. Deze compo-nent bevat niet alleen gewone, echte data maar ook metadata. Dit is informatie over de structuurvan de data. Bij een R-DBMS bijvoorbeeld bevat de metadata de namen van de relaties, de namenvan de attributen van deze relaties en de datatypes van deze attributen (integer, string, ...). EenDBMS bevat normaal ook indexen voor de data. Een index is een datastructuur die het zoekenvan informatie in de databank versnelt.
aanpassingen �
queries
⌥
schema aanpassingen⇥⇥⇥⇥⇥⇥⌃“Query”Processor
⇧
⌥
��↵��⌦
TransactionManager
��⌅��⇤StorageManager
⇧
⌥⇥⇥⇥⇥⇥⇥ ⇥⇥⇥
⇥⇥⇥
DataMetadata ⇥⇥⇥
⇥⇥⇥
Figuur 14: Belangrijkste componenten van een DBMS
Storage manager. Zijn taak bevat het ophalen van de gevraagde data uit de databank en hetaanpassen van de informatie op aanvraag van de bovenliggende niveaus. In een eenvoudig DBMS isdeze component gewoon het filesysteem van het onderliggende besturingssysteem. De naakte datawordt op disk gestockeerd waarbij het filesysteem gebruikt wordt dat normaal deel uitmaakt vanhet besturingssysteem. De storage manager vertaalt de verschillende DML statements in low-levelfilesysteem commando’s en is dus verantwoordelijk voor de daadwerkelijke stockage, opvragen enaanpassen van de data in de databank. Omwille van de e⇤cientie beheert een DBMS meestal zelfde data op de disk. Er zijn twee onderdelen:
file manager : beheert de locatie van de bestanden op de disk; levert het blok of de blokken vaneen bestand op aanvraag van de bu�er manager;
bu�er manager : stockeert het door de file manager geleverde blok in een pagina van het primairgeheugen; dit blok blijft gedurende een bepaalde tijd in primair geheugen zodat anderequeries deze data ook kunnen gebruiken zonder dat er van disk gelezen moet worden; na eentijd, wanneer er geen aanvragen voor dat blok meer blijken te zijn, wordt de pagina voor eenander net ingelezen blok gebruikt.
Query processor. Deze component doet meer dan queries afhandelen. Ook de vragen vooraanpassingen van de data en de metadata passeren via de query processor. Deze vragen wordenmeestal uitgedrukt in een taal van hoog niveau (bijv. SQL). De query processor vertaalt de vraagnaar een reeks bevelen die naar de storage manager gestuurd worden, die ze dan zal uitvoeren.Het moeilijkste deel is de query optimisatie: de keuze van een goede opeenvolging van data-aanvragen aan het storage systeem zodat snel de gevraagde data gevonden wordt. Hiervoor worden
23
![Page 6: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/6.jpg)
Query processor
Ontvangt hoog niveau bevelen of vragen (SQL)
Zet deze om naar commando’s voor storage manager
Belangrijk:query optimisatie
![Page 7: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/7.jpg)
Storage managerBeheert bestanden
Aanpassen & opvragen
Onderdelen
File manager
Buffer managerRAM HDD
![Page 8: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/8.jpg)
Transaction managerVerzekert integriteit van data
Parallelle bewerkingen
Systeemcrash
Belangrijk: logging
ACID
![Page 9: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/9.jpg)
Oracle architectuur
![Page 10: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/10.jpg)
DB vs instance0.5 Architectuur van Oracle.
0.5.1 Database versus instance
De database is de data op disk, gestockeerd op bestanden van het onderliggende operating system,of eventueel in UNIX in raw bestanden. De instance bestaat uit het System Global Area (SGA)geheugen en de achtergrond processen. Een instance wordt geSTART door gebruik te makenvan de Oracle Server Manager of de Oracle Enterprise Manager (OEM). De database wordt dangeMOUNT op de instance en tenslotte geOPENd. Gebruikers kunnen dan CONNECTeren naarde instance om de data in de database te raadplegen. Figuur 15 toont de basiscomponenten vaneen Oracle database en instance.
Oracle database⌅⇤ �⇥
⇤ ⇥
Parameter filesControl files
DatafilesRedo Log files
disk
��⇤⇤
⇥⇥⇥
⇥⇥⇥
⇥⇥⇥
Oracle server
⇤⇤��
Oracle instance
System Global Area (SGA)Background processes
memory
Figuur 15: Oracle database en Oracle instance
Behalve wanneer er gebruik gemaakt wordt van de Oracle Parallel Server (OPS) optie, is er eeneen-op-een mapping tussen instance en database. In de OPS wereld kan de database geMOUNTzijn op verschillende instances.
De instance op server A en de instanceop server B zijn beide gemountop dezelfde fysische database⇥
⇥⇥
⇥⇥⇥
⇥⇥⇥
server A
⌅⇤ �⇥⇤ ⇥Oracle database
� ⇥⇥⇥⇥
⇥⇥⇥
⇥⇥⇥
server B
Figuur 16: Oracle Parallel Server
De Oracle DBMS server is gebaseerd op een Multi-Server Architectuur. De server is verantwoor-delijk voor het verwerken van alle database activiteiten, zoals het uitvoeren van SQL statements,beheer van gebruikers en resources en het beheer van de opslagplaatsen (storages). Alhoewel ermaar een copy van de programma code van de DBMS server in geheugen aanwezig is, wordt eenlogische server aan elke geconnecteerde gebruiker toegewezen. Figuur 17 illustreert de architectuurvan een Oracle DBMS bestaande uit geheugenstructuren, processen en bestanden.
0.5.2 Oracle instance
De Oracle instance bestaat uit de Oracle processen en de bijhorende geheugenstructuren (ziefiguur 18). Deze zijn nodig om toegang te hebben tot de bestanden die samen de Oracle databasevormen en om Oracle gebruikers de data in deze bestanden te laten raadplegen.
25
1. START
2. MOUNT
3. OPEN
![Page 11: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/11.jpg)
Architectuur
⌅⇤ �⇥⇤ ⇥⇤ ⇥⇤ ⇥Datafiles
⌅⇤ �⇥⇤ ⇥⇤ ⇥Redo-Log files
⌅⇤ �⇥⇤ ⇥Control files
⌅⇤ �⇥⇤ ⇥
Archive- and Backup files
�⌥⇧⌃DBWn
�⌥⇧⌃LGWR�⌥⇧⌃ARCH�⌥⇧⌃PMON�⌥⇧⌃SMON
Background Processen
◆
⌘
✓Database
bu�ercache
⌥
⌥
�↵
⌦Redo-Log-
Bu�er
⇧
���⇤ ⇥⇥
⇥⇥⇥⇥⇥⌅
⇣✏��
LogArchiveBu�er
��⌦ ��↵
⌥
�
◆
⌘
✓
Shared Pool
Dictionary Cache
Library Cache
System Global Area (SGA)
◆
⌘✓◆
⌘✓◆
⌘✓PGA PGA PGA
Server Server ServerProces Proces Proces
⌥ ⌥ ⌥⌃ ⌃ ⌃
◆⌘✓PGA
ServerProces
⌥⌃
User 1 User 2 User 3 User n
Figuur 17: Oracle systeem architectuur
Processen
Dit zijn programma’s die op een computer in uitvoering zijn, onder de controle van het operatingsystem van de computer. Oracle creeert twee soorten processen: Oracle processen (achtergronden server processen) en gebruikersprocessen.De achtergrondprocessen voeren taken uit die anders door elk gebruikersproces dat met dedatabase geconnecteerd is, zouden moeten uitgevoerd worden.
hcr 21494 1 0 08:16:32 ? 0:00 ora_qmnc_erphcr 21477 1 0 08:16:21 ? 0:00 ora_reco_erphcr 21473 1 0 08:16:21 ? 0:00 ora_ckpt_erphcr 21471 1 0 08:16:21 ? 0:00 ora_lgwr_erphcr 21483 1 0 08:16:22 ? 0:00 ora_s000_erphcr 21465 1 0 08:16:20 ? 0:00 ora_pmon_erphcr 21479 1 0 08:16:21 ? 0:00 ora_cjq0_erphcr 21498 1 0 08:16:34 ? 0:00 ora_mmnl_erphcr 21481 1 0 08:16:21 ? 0:00 ora_d000_erphcr 21496 1 0 08:16:34 ? 0:00 ora_mmon_erphcr 21475 1 0 08:16:21 ? 0:00 ora_smon_erphcr 21469 1 0 08:16:21 ? 0:00 ora_dbw0_erphcr 21502 1 0 08:16:43 ? 0:00 ora_q000_erphcr 21467 1 0 08:16:20 ? 0:00 ora_mman_erp
26
![Page 12: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/12.jpg)
DBWnDatabase Writer
Van cache naar bestanden
Beleid: Least Recently Used (LRU)
Verschillende writer processen in parallel (DB_WRITER_PROCESSES parameter)
![Page 13: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/13.jpg)
LGWRLog writer
Redo informatie
Beheren redo-log-buffer
DBWn wacht op LGWR
![Page 14: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/14.jpg)
CKPTAlle wijzigingen wegschrijven
Maakt nieuwe consistente versie van DB
Vanwaar instance recovery kan beginnen
Bij wissel van redo log
Verminderen van MTTR
![Page 15: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/15.jpg)
SMONSystem monitor
Instance recovery adhv redo logs
Opruimen tijdelijke informatie
Coalescing
![Page 16: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/16.jpg)
PMONProcess monitor
Opruimen als gebruikersproces wegvalt
Cache
Locks
PID
Evt. rollbacks
![Page 17: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/17.jpg)
ARCn
Archiveren van redo logs
Voordat ze overschreven worden door LGWR
![Page 18: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/18.jpg)
RECO
Bij gedistribueerde DBs
Zorgt dit ervoor dat
ofwel alle locaties een transactie doen
ofwel geen enkele
![Page 19: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/19.jpg)
Architectuur
⌅⇤ �⇥⇤ ⇥⇤ ⇥⇤ ⇥Datafiles
⌅⇤ �⇥⇤ ⇥⇤ ⇥Redo-Log files
⌅⇤ �⇥⇤ ⇥Control files
⌅⇤ �⇥⇤ ⇥
Archive- and Backup files
�⌥⇧⌃DBWn
�⌥⇧⌃LGWR�⌥⇧⌃ARCH�⌥⇧⌃PMON�⌥⇧⌃SMON
Background Processen
◆
⌘
✓Database
bu�ercache
⌥
⌥
�↵
⌦Redo-Log-
Bu�er
⇧
���⇤ ⇥⇥
⇥⇥⇥⇥⇥⌅
⇣✏��
LogArchiveBu�er
��⌦ ��↵
⌥
�
◆
⌘
✓
Shared Pool
Dictionary Cache
Library Cache
System Global Area (SGA)
◆
⌘✓◆
⌘✓◆
⌘✓PGA PGA PGA
Server Server ServerProces Proces Proces
⌥ ⌥ ⌥⌃ ⌃ ⌃
◆⌘✓PGA
ServerProces
⌥⌃
User 1 User 2 User 3 User n
Figuur 17: Oracle systeem architectuur
Processen
Dit zijn programma’s die op een computer in uitvoering zijn, onder de controle van het operatingsystem van de computer. Oracle creeert twee soorten processen: Oracle processen (achtergronden server processen) en gebruikersprocessen.De achtergrondprocessen voeren taken uit die anders door elk gebruikersproces dat met dedatabase geconnecteerd is, zouden moeten uitgevoerd worden.
hcr 21494 1 0 08:16:32 ? 0:00 ora_qmnc_erphcr 21477 1 0 08:16:21 ? 0:00 ora_reco_erphcr 21473 1 0 08:16:21 ? 0:00 ora_ckpt_erphcr 21471 1 0 08:16:21 ? 0:00 ora_lgwr_erphcr 21483 1 0 08:16:22 ? 0:00 ora_s000_erphcr 21465 1 0 08:16:20 ? 0:00 ora_pmon_erphcr 21479 1 0 08:16:21 ? 0:00 ora_cjq0_erphcr 21498 1 0 08:16:34 ? 0:00 ora_mmnl_erphcr 21481 1 0 08:16:21 ? 0:00 ora_d000_erphcr 21496 1 0 08:16:34 ? 0:00 ora_mmon_erphcr 21475 1 0 08:16:21 ? 0:00 ora_smon_erphcr 21469 1 0 08:16:21 ? 0:00 ora_dbw0_erphcr 21502 1 0 08:16:43 ? 0:00 ora_q000_erphcr 21467 1 0 08:16:20 ? 0:00 ora_mman_erp
26
![Page 20: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/20.jpg)
Geheugenstructuren
System global area Program global area Sorteergebied
![Page 21: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/21.jpg)
SGA
Informatie die gedeeld wordt tussen systeemprocessen gebuikersprocessen
Zevental belangrijke componenten
![Page 22: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/22.jpg)
SGA: Database buffer cache
Kopie van DB gegevens in RAM Belangrijk voor performantie Grootte is belangrijke parameter LRU update Beheerd door DWRn
![Page 23: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/23.jpg)
SGA: Shared poolInfo uit verwerking van SQL, PL/SQL Spaart tijd bij gelijkaardige queries Twee belangrijke onderdelen:
Dictionary cache -> metadata over structuur van DB Library cache -> parse tree, execution plan
![Page 24: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/24.jpg)
SGA: AndereRedo log buffer -> LGWR Large pool -> grote brokken gegevens (optioneel) Java pool -> Oracle JVM Streams pool -> gedistribueerde omgeving Log archive buffer -> ARCH (optioneel)
![Page 25: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/25.jpg)
Program global area
Hoort bij een gebruikersproces Configuratie:
shared server dedicated server
Daarnaast sorteergebied voor data-operaties, zoals sorteren, hash-join, ...
![Page 26: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/26.jpg)
Tablespaces, files en schema’s
![Page 27: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/27.jpg)
Fysische DB structuur0.5 Architectuur van Oracle.
0.5.1 Database versus instance
De database is de data op disk, gestockeerd op bestanden van het onderliggende operating system,of eventueel in UNIX in raw bestanden. De instance bestaat uit het System Global Area (SGA)geheugen en de achtergrond processen. Een instance wordt geSTART door gebruik te makenvan de Oracle Server Manager of de Oracle Enterprise Manager (OEM). De database wordt dangeMOUNT op de instance en tenslotte geOPENd. Gebruikers kunnen dan CONNECTeren naarde instance om de data in de database te raadplegen. Figuur 15 toont de basiscomponenten vaneen Oracle database en instance.
Oracle database⌅⇤ �⇥
⇤ ⇥
Parameter filesControl files
DatafilesRedo Log files
disk
��⇤⇤
⇥⇥⇥
⇥⇥⇥
⇥⇥⇥
Oracle server
⇤⇤��
Oracle instance
System Global Area (SGA)Background processes
memory
Figuur 15: Oracle database en Oracle instance
Behalve wanneer er gebruik gemaakt wordt van de Oracle Parallel Server (OPS) optie, is er eeneen-op-een mapping tussen instance en database. In de OPS wereld kan de database geMOUNTzijn op verschillende instances.
De instance op server A en de instanceop server B zijn beide gemountop dezelfde fysische database⇥
⇥⇥
⇥⇥⇥
⇥⇥⇥
server A
⌅⇤ �⇥⇤ ⇥Oracle database
� ⇥⇥⇥⇥
⇥⇥⇥
⇥⇥⇥
server B
Figuur 16: Oracle Parallel Server
De Oracle DBMS server is gebaseerd op een Multi-Server Architectuur. De server is verantwoor-delijk voor het verwerken van alle database activiteiten, zoals het uitvoeren van SQL statements,beheer van gebruikers en resources en het beheer van de opslagplaatsen (storages). Alhoewel ermaar een copy van de programma code van de DBMS server in geheugen aanwezig is, wordt eenlogische server aan elke geconnecteerde gebruiker toegewezen. Figuur 17 illustreert de architectuurvan een Oracle DBMS bestaande uit geheugenstructuren, processen en bestanden.
0.5.2 Oracle instance
De Oracle instance bestaat uit de Oracle processen en de bijhorende geheugenstructuren (ziefiguur 18). Deze zijn nodig om toegang te hebben tot de bestanden die samen de Oracle databasevormen en om Oracle gebruikers de data in deze bestanden te laten raadplegen.
25
1. START
2. MOUNT
3. OPEN
![Page 28: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/28.jpg)
Fysische DB structuurParameter files (INIT.ORA) -> bij START, geeft configuratie van instance Control files -> bij MOUNT, namen van datafiles en logfiles Datafiles -> gegevens, na OPEN Redo log files -> voor recovery
![Page 29: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/29.jpg)
Low-level -> high levelDBMS beheert data zoveel mogelijk zelf
<- block (parameter)
extent extent
<- segment
...
Tablespace ~ aantal bestanden
DB
![Page 30: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/30.jpg)
Fysische en logische structuur
redo log file database control file
data file tablespace
segmentextentblock
tableindexrollback
![Page 31: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/31.jpg)
TablespacesSYSTEM
altijd beschikbaar vanaf OPEN data dictionary
ROLLBACK bevat “rollback segmenten” ipv tabellen “before image” voor consistent lezen of rollback
TEMP, TOOLS, USERS DBA kan bijmaken voor gebruikersdata
![Page 32: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/32.jpg)
Typische DBA taken
![Page 33: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/33.jpg)
DB creatie1. Creatie van control files en SYSTEM tablespace 2. Data dictionary in SYSTEM tablespace 3. Objecten die nodig zijn voor PL/SQL enz. 4. Creatie van rollback segment in SYSTEM
![Page 34: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/34.jpg)
DB creatie5. Rollback tablespace (best op andere disk) 6. Rollback segmenten (-> INIT.ORA) 7. Temporary tablespace 8. Bijkomende tablespaces: best verschillende disks voor data en indices 9. Default tablespaces toewijzen
![Page 35: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/35.jpg)
SchemaVerzameling tabellen, views, indices Elk object is eigendom van een schema
SYS: eigenaar van data dictionary SYSTEM: extra systeeminformatie Andere gemaakt door DBA
= gebruiker
![Page 36: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/36.jpg)
Gebruiker
Is eigenaar van alle objecten die hij maakt Deze objecten komen in gelijknamig schema Volledige naam van object: schema.object
![Page 37: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/37.jpg)
Data dictionary
Metadata Read-only SYSTEM tablespace
![Page 38: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/38.jpg)
Data dictionaryObjectdefinities (tabellen, indexen,...) Opslagcapaciteit per object Gebruikers, rechten en rollen Integriteitsvoorwaarden
![Page 39: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/39.jpg)
Data dictionaryGemanipuleerd door Oracle DBMS Aantal views op structuur van databank
USER: user_objects (enkel gebruiker zelf) naam, type, datum van creatie,...
ALL: all_objects (alles waar gebruiker aan kan) naam, type, eigenaar...
DBA: sys.dba_objects (alles)
![Page 40: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/40.jpg)
Data dictionary (2)
Views op dynamische performatie Views op toegekende rechten Views op rollen en rechten
![Page 41: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/41.jpg)
GebruikerDBA kan gebruikers creeeren:
Hoeveel quota op welke tablespace Authenticatie
Database: geencrypteerd PW in DB OS Netwerk: public key
![Page 42: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/42.jpg)
RechtenNa creatie, moet gebruiker rechten rechten krijgen Systeem rechten
Object rechten
CREATE SESSION ALTER SESSION CREATE TABLE
CREATE ANY TABLE ALTER ANY TABLE CREATE ANY INDEX
UNLIMITED TABLESPACE
SELECT, INSERT, UPDATE, DELETE
![Page 43: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/43.jpg)
Rollen Verzameling van toegangsrechten Die kan worden toegewezen aan gebruikercreate role student not identified;
grant create session, create table, create view, create procedure, create trigger to student;
grant student to &&1;
![Page 44: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/44.jpg)
ProfielResources die gebruiker mag gebruiken
create profile conlog limit connect_time 120 failed_login_attempts 8;
![Page 45: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/45.jpg)
Verwerking van SQL statement
![Page 46: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/46.jpg)
SQL van user Library cache? Maak uitvoeringsplan
Parse Optimize
⌅⇤ �⇥⇤ ⇥⇤ ⇥⇤ ⇥Datafiles
⌅⇤ �⇥⇤ ⇥⇤ ⇥Redo-Log files
⌅⇤ �⇥⇤ ⇥Control files
⌅⇤ �⇥⇤ ⇥
Archive- and Backup files
�⌥⇧⌃DBWn
�⌥⇧⌃LGWR�⌥⇧⌃ARCH�⌥⇧⌃PMON�⌥⇧⌃SMON
Background Processen
◆
⌘
✓Database
bu�ercache
⌥
⌥
�↵
⌦Redo-Log-
Bu�er
⇧
���⇤ ⇥⇥
⇥⇥⇥⇥⇥⌅
⇣✏��
LogArchiveBu�er
��⌦ ��↵
⌥
�
◆
⌘
✓
Shared Pool
Dictionary Cache
Library Cache
System Global Area (SGA)
◆
⌘✓◆
⌘✓◆
⌘✓PGA PGA PGA
Server Server ServerProces Proces Proces
⌥ ⌥ ⌥⌃ ⌃ ⌃
◆⌘✓PGA
ServerProces
⌥⌃
User 1 User 2 User 3 User n
Figuur 17: Oracle systeem architectuur
Processen
Dit zijn programma’s die op een computer in uitvoering zijn, onder de controle van het operatingsystem van de computer. Oracle creeert twee soorten processen: Oracle processen (achtergronden server processen) en gebruikersprocessen.De achtergrondprocessen voeren taken uit die anders door elk gebruikersproces dat met dedatabase geconnecteerd is, zouden moeten uitgevoerd worden.
hcr 21494 1 0 08:16:32 ? 0:00 ora_qmnc_erphcr 21477 1 0 08:16:21 ? 0:00 ora_reco_erphcr 21473 1 0 08:16:21 ? 0:00 ora_ckpt_erphcr 21471 1 0 08:16:21 ? 0:00 ora_lgwr_erphcr 21483 1 0 08:16:22 ? 0:00 ora_s000_erphcr 21465 1 0 08:16:20 ? 0:00 ora_pmon_erphcr 21479 1 0 08:16:21 ? 0:00 ora_cjq0_erphcr 21498 1 0 08:16:34 ? 0:00 ora_mmnl_erphcr 21481 1 0 08:16:21 ? 0:00 ora_d000_erphcr 21496 1 0 08:16:34 ? 0:00 ora_mmon_erphcr 21475 1 0 08:16:21 ? 0:00 ora_smon_erphcr 21469 1 0 08:16:21 ? 0:00 ora_dbw0_erphcr 21502 1 0 08:16:43 ? 0:00 ora_q000_erphcr 21467 1 0 08:16:20 ? 0:00 ora_mman_erp
26
![Page 47: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/47.jpg)
Laad objecten In cache? Maak plaats als buffer vol Haal van disk ⌅⇤ �⇥⇤ ⇥⇤ ⇥⇤ ⇥
Datafiles
⌅⇤ �⇥⇤ ⇥⇤ ⇥Redo-Log files
⌅⇤ �⇥⇤ ⇥Control files
⌅⇤ �⇥⇤ ⇥
Archive- and Backup files
�⌥⇧⌃DBWn
�⌥⇧⌃LGWR�⌥⇧⌃ARCH�⌥⇧⌃PMON�⌥⇧⌃SMON
Background Processen
◆
⌘
✓Database
bu�ercache
⌥
⌥
�↵
⌦Redo-Log-
Bu�er
⇧
���⇤ ⇥⇥
⇥⇥⇥⇥⇥⌅
⇣✏��
LogArchiveBu�er
��⌦ ��↵
⌥
�
◆
⌘
✓
Shared Pool
Dictionary Cache
Library Cache
System Global Area (SGA)
◆
⌘✓◆
⌘✓◆
⌘✓PGA PGA PGA
Server Server ServerProces Proces Proces
⌥ ⌥ ⌥⌃ ⌃ ⌃
◆⌘✓PGA
ServerProces
⌥⌃
User 1 User 2 User 3 User n
Figuur 17: Oracle systeem architectuur
Processen
Dit zijn programma’s die op een computer in uitvoering zijn, onder de controle van het operatingsystem van de computer. Oracle creeert twee soorten processen: Oracle processen (achtergronden server processen) en gebruikersprocessen.De achtergrondprocessen voeren taken uit die anders door elk gebruikersproces dat met dedatabase geconnecteerd is, zouden moeten uitgevoerd worden.
hcr 21494 1 0 08:16:32 ? 0:00 ora_qmnc_erphcr 21477 1 0 08:16:21 ? 0:00 ora_reco_erphcr 21473 1 0 08:16:21 ? 0:00 ora_ckpt_erphcr 21471 1 0 08:16:21 ? 0:00 ora_lgwr_erphcr 21483 1 0 08:16:22 ? 0:00 ora_s000_erphcr 21465 1 0 08:16:20 ? 0:00 ora_pmon_erphcr 21479 1 0 08:16:21 ? 0:00 ora_cjq0_erphcr 21498 1 0 08:16:34 ? 0:00 ora_mmnl_erphcr 21481 1 0 08:16:21 ? 0:00 ora_d000_erphcr 21496 1 0 08:16:34 ? 0:00 ora_mmon_erphcr 21475 1 0 08:16:21 ? 0:00 ora_smon_erphcr 21469 1 0 08:16:21 ? 0:00 ora_dbw0_erphcr 21502 1 0 08:16:43 ? 0:00 ora_q000_erphcr 21467 1 0 08:16:20 ? 0:00 ora_mman_erp
26
![Page 48: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/48.jpg)
Rijen die moeten veranderen Before image -> rollback segmenten Redo log buffer
LGWR Data buffer aanpassen
⌅⇤ �⇥⇤ ⇥⇤ ⇥⇤ ⇥Datafiles
⌅⇤ �⇥⇤ ⇥⇤ ⇥Redo-Log files
⌅⇤ �⇥⇤ ⇥Control files
⌅⇤ �⇥⇤ ⇥
Archive- and Backup files
�⌥⇧⌃DBWn
�⌥⇧⌃LGWR�⌥⇧⌃ARCH�⌥⇧⌃PMON�⌥⇧⌃SMON
Background Processen
◆
⌘
✓Database
bu�ercache
⌥
⌥
�↵
⌦Redo-Log-
Bu�er
⇧
���⇤ ⇥⇥
⇥⇥⇥⇥⇥⌅
⇣✏��
LogArchiveBu�er
��⌦ ��↵
⌥
�
◆
⌘
✓
Shared Pool
Dictionary Cache
Library Cache
System Global Area (SGA)
◆
⌘✓◆
⌘✓◆
⌘✓PGA PGA PGA
Server Server ServerProces Proces Proces
⌥ ⌥ ⌥⌃ ⌃ ⌃
◆⌘✓PGA
ServerProces
⌥⌃
User 1 User 2 User 3 User n
Figuur 17: Oracle systeem architectuur
Processen
Dit zijn programma’s die op een computer in uitvoering zijn, onder de controle van het operatingsystem van de computer. Oracle creeert twee soorten processen: Oracle processen (achtergronden server processen) en gebruikersprocessen.De achtergrondprocessen voeren taken uit die anders door elk gebruikersproces dat met dedatabase geconnecteerd is, zouden moeten uitgevoerd worden.
hcr 21494 1 0 08:16:32 ? 0:00 ora_qmnc_erphcr 21477 1 0 08:16:21 ? 0:00 ora_reco_erphcr 21473 1 0 08:16:21 ? 0:00 ora_ckpt_erphcr 21471 1 0 08:16:21 ? 0:00 ora_lgwr_erphcr 21483 1 0 08:16:22 ? 0:00 ora_s000_erphcr 21465 1 0 08:16:20 ? 0:00 ora_pmon_erphcr 21479 1 0 08:16:21 ? 0:00 ora_cjq0_erphcr 21498 1 0 08:16:34 ? 0:00 ora_mmnl_erphcr 21481 1 0 08:16:21 ? 0:00 ora_d000_erphcr 21496 1 0 08:16:34 ? 0:00 ora_mmon_erphcr 21475 1 0 08:16:21 ? 0:00 ora_smon_erphcr 21469 1 0 08:16:21 ? 0:00 ora_dbw0_erphcr 21502 1 0 08:16:43 ? 0:00 ora_q000_erphcr 21467 1 0 08:16:20 ? 0:00 ora_mman_erp
26
![Page 49: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/49.jpg)
Bij COMMIT: before image mag weg
Bij ROLLBACK: before image wordt teruggezet
⌅⇤ �⇥⇤ ⇥⇤ ⇥⇤ ⇥Datafiles
⌅⇤ �⇥⇤ ⇥⇤ ⇥Redo-Log files
⌅⇤ �⇥⇤ ⇥Control files
⌅⇤ �⇥⇤ ⇥
Archive- and Backup files
�⌥⇧⌃DBWn
�⌥⇧⌃LGWR�⌥⇧⌃ARCH�⌥⇧⌃PMON�⌥⇧⌃SMON
Background Processen
◆
⌘
✓Database
bu�ercache
⌥
⌥
�↵
⌦Redo-Log-
Bu�er
⇧
���⇤ ⇥⇥
⇥⇥⇥⇥⇥⌅
⇣✏��
LogArchiveBu�er
��⌦ ��↵
⌥
�
◆
⌘
✓
Shared Pool
Dictionary Cache
Library Cache
System Global Area (SGA)
◆
⌘✓◆
⌘✓◆
⌘✓PGA PGA PGA
Server Server ServerProces Proces Proces
⌥ ⌥ ⌥⌃ ⌃ ⌃
◆⌘✓PGA
ServerProces
⌥⌃
User 1 User 2 User 3 User n
Figuur 17: Oracle systeem architectuur
Processen
Dit zijn programma’s die op een computer in uitvoering zijn, onder de controle van het operatingsystem van de computer. Oracle creeert twee soorten processen: Oracle processen (achtergronden server processen) en gebruikersprocessen.De achtergrondprocessen voeren taken uit die anders door elk gebruikersproces dat met dedatabase geconnecteerd is, zouden moeten uitgevoerd worden.
hcr 21494 1 0 08:16:32 ? 0:00 ora_qmnc_erphcr 21477 1 0 08:16:21 ? 0:00 ora_reco_erphcr 21473 1 0 08:16:21 ? 0:00 ora_ckpt_erphcr 21471 1 0 08:16:21 ? 0:00 ora_lgwr_erphcr 21483 1 0 08:16:22 ? 0:00 ora_s000_erphcr 21465 1 0 08:16:20 ? 0:00 ora_pmon_erphcr 21479 1 0 08:16:21 ? 0:00 ora_cjq0_erphcr 21498 1 0 08:16:34 ? 0:00 ora_mmnl_erphcr 21481 1 0 08:16:21 ? 0:00 ora_d000_erphcr 21496 1 0 08:16:34 ? 0:00 ora_mmon_erphcr 21475 1 0 08:16:21 ? 0:00 ora_smon_erphcr 21469 1 0 08:16:21 ? 0:00 ora_dbw0_erphcr 21502 1 0 08:16:43 ? 0:00 ora_q000_erphcr 21467 1 0 08:16:20 ? 0:00 ora_mman_erp
26
![Page 50: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/50.jpg)
Data
Redo
cleandirty
Data Redo
cleandirty
Rollback segmenten
Redo archief
![Page 51: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/51.jpg)
Data
Redo
cleandirty
Data Redo
cleandirty
SQL
LRU
Rollback segmenten
Redo archief
![Page 52: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/52.jpg)
Data
Redo
cleandirty
Data Redo
dirty
SQL
DBWn
LGWR
Rollback segmenten
Redo archief
![Page 53: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/53.jpg)
Data
Redo
cleandirty
Data Redo
dirty
SQL
DBWn
Rollback segmenten
Redo archief
![Page 54: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/54.jpg)
Data
Redo
cleandirty
Data Redo
clean
SQL
Rollback segmenten
Redo archief
![Page 55: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/55.jpg)
Data
Redo
cleandirty
Data Redo
SQL
Read
Rollback segmenten
Redo archief
![Page 56: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/56.jpg)
Data
Redo
cleandirty
Data Redo
SQL
Rollback segmenten
Redo archief
![Page 57: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/57.jpg)
Data
Redo
cleandirty
Data Redo
SQL
Update
Rollback segmenten
Redo archief
![Page 58: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/58.jpg)
Data
Redo
cleandirty
Data Redo
SQL
Update
Rollback segmenten
Redo archief
![Page 59: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/59.jpg)
Data
Redo
cleandirty
Data Redo
Rollback segmenten
Redo archief
Update klaar
![Page 60: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/60.jpg)
Data
Redo
cleandirty
Data Redo
COMMIT
Rollback segmenten
Redo archief
![Page 61: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/61.jpg)
Data
Redo
cleandirty
Data Redo
ROLLBACK
Rollback segmenten
Redo archief
![Page 62: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/62.jpg)
Data
Redo
cleandirty
Data Redo
Redo log wissel
Rollback segmenten
Redo archief
ARCn
CKPT
![Page 63: DB architectuur - people.cs.kuleuven.bejoost.vennekens/DN/dbe-sl2.pdf · Redo-Log files ⌅ ⇤ ⇥ ⇤ ⇥ Control files ⌅ ⇤ ⇥ ⇤ ⇥ Archive- and Backup files ⌥ ⇧](https://reader033.fdocument.pub/reader033/viewer/2022042109/5e898475b7100e61bf61ba6e/html5/thumbnails/63.jpg)
Data
Redo
cleanclean
Data Redo
Redo log wissel
Rollback segmenten
Redo archief