Oggi voglio parlare di uno dei db più utilizzati in ambito aziendale.
Comincio col dire che avere un db Oracle da gestire è impegnativo soprattutto perché c’è tutta una infrastruttura dietro che gestisce molte cose e capire bene come funziona un db di questo genere aiuta molto e permette di eseguire e adoperare al meglio le operazioni e attività che si devono fare quotidianamente.
L’architettura di un db Oracle ha 2 importanti componenti:
- Istanza: è la componente lato server che contiene le strutture di memoria (logiche) che forma la cosiddetta SGA (System Global Area) che serve per gestire i processi (di background) che hanno la loro memoria chiamata PGA e i files presenti su db
- Database: è la componente che contiene tutti i files che risiedono sullo spazio fisico del server dove sono presenti i datafiles, e altri files utili e necessari al db
Istanza
SGA
Quando l’istanza del db viene inizializzata e avviata viene creato uno spazio di memoria che è la SGA. Ogni SGA controlla e gestisce una singola istanza del db.
Ogni processo lato server ha la sua memoria dedicata chiamata PGA (Program Global Area) che contiene dati e informazioni che sono riservate e con condivise con gli altri processi.
Listener
E’ il processo in ascolto di solito su porta 1521 sul server che ospita il db che permette la connessione tra l’istanza del db server e un pc client che abbia installato un tool specifico adibito all’accesso e alla connessione ad un db Oracle (ad esempio Toad for Oracle o Oracle SQL Developer) e in running il relativo processo.
Database
All’interno del db, si trovano molti tipi di files. Quelli più importanti da ricordare sono:
- control files: contengono le strutture del db e le informazioni di sincronizzazione
- redo log files: contengono le modifiche apportate al db
- datafiles: contengono i dati che vengono scritti e memorizzati nel db, come tabelle, viste, ecc…
- alert log files: contengono le informazioni relative ad errori o altre informazioni utile per il debug e la risoluzione di problemi su una specifica istanza del db. Esiste un alert log file per ogni istanza presente su db
- parameter file: è il file di configurazione che viene usato per l’avvio del db, e contiene quindi tutte le informazioni necessarie per il suo corretto avvio; di solito viene chiamato init.ora
- network configuration files: contengono le configurazioni delle componenti di rete necessarie per il funzionamento del db, fanno parte di questi file ad esempio: tnsname.ora e listener.ora che servono per la configurazione delle istanze e dei listener del db.
Un altro concetto fondamentale è il tablespace che non è altro che un contenitore logico che include le tabelle e gli indici legati ad una singola istanza del db. Più precisamente è quello che ospita uno o più datafile.
E’ possibile collegarsi ed accedere a un db Oracle tramite un pc client che abbia un sw come SQL Developer o Toad for Oracle. Di seguito i relativi siti web:
https://www.quest.com/products/toad-for-oracle/
https://www.oracle.com/database/technologies/appdev/sqldeveloper-landing.html
Per concludere potete trovare la documentazione ufficiale Oracle al seguente indirizzo:
https://docs.oracle.com/en/database/
Nota: occorre avere un account Oracle per accedere alla documentazione sui loro prodotti.