Startup e shutdown di Oracle

Oracle e' un gestore di basi dati relazionali. L'RDBMS Oracle supporta basi dati anche molto complesse e di grandi dimensioni e ha una notevole diffusione.

[NdE questo documento e' tecnicamente corretto ma essendo stato scritto lo scorso millennio (1998) si riferisce a versioni di Oracle non piu' recenti. Una versione piu' aggiornata di questa pagina e' questa!]

In diverse occasioni piu' essere necessario effettuare uno shutdown/reboot dell'RDBMS Oracle (eg. perche' si vuole effettuare un backup fisico a freddo).
Si e' quindi ritenuto opportuno riportare alcune note sui comandi da utilizzare. Poiche' le versioni versioni utilizzate di Oracle sono differenti e differenti sono le possibilita' di configurazione gli esempi iniziali si riferiranno all'utilizzo di Oracle 7.3 con una configurazione di default su un sistema Unix. Quindi sono riportate le differenze relative ad alcune altre possibili configurazioni. Oltre allo startup/shutdown del server Oracle sono riportati anche i comandi per il listener di Oracle che consente l'accesso alla base dati in remoto via SQL*Net.

Controllo del funzionamento di Oracle

Prima di effettuare uno shutdown di un servizio e' necessario se questo e' attivo! Se non siete in grado di effettuare questo controllo allora e' probabilmente meglio che evitiate di fare lo shutdown. Per controllare il corretto funzionamento di Oracle sono opportune le seguenti verifiche:

In alcune situazioni e' corretto che il database Oracle non sia attivo. Ad esempio riattivare Oracle durante un restore fisico e' pericoloso se non peggio!
Se non sapete cosa state facendo... non fatelo!

Attivazione o startup del database Oracle

Innanzi tutto versioni differenti di Oracle richiedono comandi e modalita' differenti. Quelle riportate sono le piu' recenti e diffuse, nel seguito sono indicate le variazioni relative a versioni precedenti o a configurazioni particolari.

Per attivare Oracle:

Il comando startup ha diverse possibili opzioni (eg. mount, dba) che sono utili per effettuare attivita' di amministrazione sulla base dati... Per i nostri semplici scopi (far partire una base dati) non e' necessario conoscerle.

Disattivazione o shutdown del database Oracle

Per effettuare lo shutdown di Oracle:

Se anziche' con l'opzione immediate si utilizza normal il comando shutdown attende che tutte le connessioni attive sulla base dati si scolleghino. Non e' in generale consigliabile poiche' di frequente utenti ed applicazioni "dimenticano" di scollegarsi. In caso di particolari problemi puo' essere utilizzata l'opzione di abort...

Attivazione del listener Oracle

Per attivare il listener Oracle:

Disattivazione del listener Oracle

Per disattivare il listener Oracle:

Variazioni sul tema (versioni)

Con la versione 6 di Oracle l'amministratore utilizzava il comando sqldba anziche' il Server Manager (svrmgrl).

Con la versione 1 di SQL*Net il comando per la gestione del listener era tcpctl. La versione 1 e' stata mantenuta fino alla versione 7.2 dell'RDBMS Oracle (su cui erano disponibili sia SQL*Net 1 che SQL*Net 2).

Vi sono diverse versioni grafiche del Server Manager. Ma non mi piacciono, quindi non ve le racconto! Sappiate che esistono.

Nel colorato mondo Microsoft (NT ed affini) vi sono tanti simpatici strumenti per attivare i servizi (eg. un semaforo). Sono di semplice utilizzo ed e' ridicolo cercare di descriverli a parole...


Variazioni al tema (DBA)

Vi sono innumerevoli variazioni a quanto riportato in precedenza che dipendono da configurazioni particolari utilizzabili ed utilizzate in diversi casi. Alcune variazioni hanno delle ottime ragioni (eg. utilizzare file di parametri differenti per l'utilizzo della base dati durante i batch) altre sono solo complicazioni... ma basta non lasciarsi ingannare: non puo' essere difficile, tutto si puo' trovare!

Possono essere presenti piu' istanze di Oracle... Le istanze vengono scelte impostando la variabile ORACLE_SID.

L'utente unix oracle puo' essere un qualsiasi utente... ad esempio pippo. Quale vantaggio vi sia ad utilizzare l'utente pippo al posto di oracle non lo so ma vedo che e' una tecnica molto diffusa (ovviamente non con pippo ma con altri nomi di utenti dal significato incerto).

I file di configurazione della base dati si trovano sotto $ORACLE_HOME/dbs e si chiamano initSID.ora. Di solito! Innanzi tutto e' possibile utilizzare file di parametri alternativi utilizzando l'opzione PFILE di svrmgrl. Inoltre puo' essere utilizzata l'istruzione di include per leggere alcuni altri parametri (tipicamente le directory dove trovare altri file...).

I file di alert possono essere ovunque anche se generalmente si trovano su $ORACLE_HOME/rdbms/log. In ogni caso sono definiti al boot di Oracle. Spesso sono definiti nel file config incluso nel file di initSID.ora.

Possono essere attivati piu' listener (ovviamente su porte socket differenti). I nomi del listener da utilizzare come parametri al comando lsnrctl possono essere qualsiasi ... Ricercare nel file $ORACLE_HOME/network/admin/listener.ora i nomi dei listener da utilizzare.

Possono essere presenti piu' installazioni di Oracle sul sistema... Ogni installazione puo' avere una versione diversa... Naturalmente ogni versione utilizza una ORACLE_HOME differente.


Testo: Startup e shutdown di Oracle
Data: 30 Marzo 1998
Versione: 1.0.2
Autore: mail@meo.bogliolo.name