Lors de son démarrage, une instance Oracle lit ses paramètres dans un fichier, dit de démarrage ou d’initialisation.
Ce fichier peut être de 2 types :
- un ‘init.ora’, fichier texte simple en lecture seule
- un ’sp file’, fichier de paramètre serveur, binaire, en lecture / écriture.
Dans l’ordre Oracle recherche ses paramètres PAR DEFAUT dans :
* spfile$ORACLE_SID.ora file ? l’emplacement par défaut
* spfile.ora
* et un fichier init.ora par défaut init$ORACLE_SID.ora.
Il est toujours possible de spécifier explicitement un fichier de parametres lors du démarrage de la base :
SQL> startup PFILE=/mon_chemin/mon_fic_init.ora
ou
SQL> startup SPFILE=/mon_chemin/mon_fic_spfile
Le fichier INIT.ORA
Il est éditable avec un éditeur de texte standard. Les modifications faites en son sein sont prises en compte lors du redémarrage de la base.Son contenu est de la forme suivante :
# commentaire
#
nom_parametre = valeur
nom_parametre = ( valeur1, valeurs2, … )
Un fichier init.ora MINIMISSIME contient 2 paramètres :
‘DB_NAME’ : le nom de la base de données
‘CONTROL_FILES’ : la liste des fichiers de contrôle utilisés
Les autres paramètres les plus fréquemment utilisés sont les suivants (S:statique, M:modifiable, D: dérivé d’un autre parametre)
COMPATIBLE S : Compatibilité arrière avec les versions précédentes (>= 9.2.0)
DB_DOMAIN S : Nom de domaine, qui associé au DB_NAME donne un nom de base unique
DB_RECOVERY_FILE_DEST M : Répertoire de destination de la zone de FLASH recovery
LOG_ARCHIVE_DEST_n M : Répertoire des fichiers REDO LOGS archivés
NLS_LANGUAGE D : langue utilisée (fonction de NLS_LANG dans l’environnement Unix ou windows)
NLS_TERRITORY M : le territoire (France par ex). Impacte les dates, et la monnaie
OPEN_CURSORS M : nb max de cursor ouvrable par une application
PGA_AGGREGATE_TARGET M : si 0, dimensionnement auto de la PGA, pour les proccess utilisateur server
PROCESSES S : nb max de process connectés ? Oracle (background et user)
SESSIONS D : = 1,1 * PROCESSES
SGA_TARGET D : si 0 auto dimensionnement de la SGA
SHARED_SERVER M : 0 si serveur dédié, n = nb de serveurs partagés lancés au startup instance
SP_FILE S : emplacement du SP File
UNDO_MANAGEMENT S : Manual | Auto, par dafaut Manual indique qu’on utilise des Rollback segments
Les noms et emplacements standards de ce fichier INIT.ORA sont les suivants :
sur Unix/Linux $ORACLE_HOME/dbs/init$ORACLE_SID.ora
sur Windows %ORACLE_HOME%\\database\\init%PRACLE8SID%.ora
note : il existe un fichier init.ora d’exemple (sample init.ora file) abondamment commenté sur chaque plate forme installé.
Il se trouve
sur Unix/Linux dans $ORACLE_HOME/dbs/
sur Windows dans %ORACLE_HOME%\\admin\\samplepfile
Le fichier SPFILE
Le fichier spfile, est aussi un fichier externe localisé sur le serveur de données, qui contient les paramètres.
Ceux ci sont persistants, c’est a dire qu’on peut les modifier ? n’importe quel moment, et que ces changements resteront pérennes au del? du re démarrage de la base. Ceci se fait avec la commande ALTER SYSTEM.
exemple :
SQL> ALTER SYSTEM SET DB_FILES=500 SCOPE = SPFILE;
On peut créer un SPFILE ex nihilo avec l’assistant de création de base de données ‘dbca’ ou ? partir d’un ‘init.ora’ existant avec la commande ‘CREATE SPFILE’.
exemple :
SQL> CREATE SPFILE = ” FROM PFILE = ”
Les noms et emplacements standards de ce fichier SPFILE sont les suivants :
sur Unix/Linux $ORACLE_HOME/dbs/spfile$ORACLE_SID.ora
sur Windows %ORACLE_HOME%databasespfile%ORACLE_SID%.ora
Pour savoir quel SPFILE est effectivement utilisé on peut faire sous SQL+ :
SQL> SHOW PARAMETER SPFILE NAME TYPE VALUE ----- --------- ------------------ SPFILE STRING F:ORACLEPRODUCT10.2.0DB_2 DBSSPFILEORCL.ORA
Enfin, un fichier init.ora peut être quasiment vide et simplement référencer un SPFILE, par un genre ” d’inclusion’ :
# exemple de init.ora referencant simplement un spfile :
#
SPFILE=’spfile.ora’
novembre 24th, 2007 at 2:01
ORACLE9i
SQL>startup spfile=C:\oracle\ora92\database\SPFILEORCL.ORA
SP2-0714: Combinaison non valide d’options STARTUP
STARTUP PFILE= ….., pfile qui référencie le SPFILE eventuellement comme dans votre exemple.
Bonne continuation