Gérer une instance




Instance Oracle

Un serveur Oracle est composé d'une instance Oracle et d'une base de données Oracle.
Une base de données Oracle n’est accessible que via une instance.
Une instance du serveur Oracle est composée d’une structure de mémoire partagée SGA (Système Global Area) et de plusieurs processus Oracle en arrière-plan ayant chacun un rôle bien déterminé.

Gérer l'instance Oracle

Notez bien que le répertoire où est installé Oracle est indiqué par la variable d'environnement :
  • %ORACLE_HOME% pour le système Microsoft Windows. Sa valeur est définie dans le registre.
  • $ORACLE_HOME pour les systèmes UNIX. Sa valeur est définie dans le fichier .profile.
Dans ce qui suit, nous utiliserons généralement  la variable  $ORACLE_HOME et la nomenclature Unix pour simplifier.

Database control

Pour accéder et gérer votre base de données Oracle10g via une interface web, vous utilisez l'interface de gestion "Oracle Enterprise Manager Database Control " qui se connecte à l'instance Oracle via le processus d'écoute : le Listner.
Ces trois composants doivent être alors démarrés pour pouvoir gérer la base via web.
L'interface de gestion Database Control une fois disponible, permet par la suite de lancer les autres composants (instance et listner).
Pour pouvoir utiliser l'interface de gestion, le processus correspondant côté serveur "dbconsole" doit être démarré (commande emctl start dbconsole). Pour l'instance ORCL par exemple, la variable ORACLE_SID doit être définie au préalable (set ORACLE_SID=ORCL sous Windows ou variable  $ORACLE_SID=ORCL dans .profile  sous Unix). Notez tout de même que sous Windows, si vous n'utilisez pas la ligne  de commande et vous lancez "OracleDBConsoleorcl" dans la console "Services" (Panneau de configuration ==> Outils d'administration), la variable sera lue à partir du registre Windows.
La commande emctl est disponible dans "$ORACLE_HOME/bin". Assurez vous que ce chemin est listé dans la variable d'environnement "$PATH".

Un DBA Oracle (administrateur de base de données) peut toujours lancer des commandes en ligne pour gérer la base de données, créer et modifier des objets, faire des sauvegardes ou des opérations de récupération ...etc

L'interface de gestion Database Control permet de faire toutes ces opérations d'administration via une interface graphique basée sur le web.

Accès à Database Control

Le processus DBConsole étant démarré, pour accéder à l'interface de gestion, entrez l'url suivante dans votre navigateur Web : http://hostname:1158/em
"hostname" est Le nom de la machine sur laquelle le processus Listner est en cours d'exécution. Si vous testez une installation "Oracle Database" sur votre ordinateur local, hostname peut avoir la valeur localhost ou 127.0.0.1 ou le nom de votre ordinateur.
"1158" est le port HTTP de la console de gestion Database Control. Vérifiez-le dans le fichier "$ORACLE_HOME/install/portlist.ini".
Si la base de données est arrêtée, une page est affichée sur votre navigateur pour :
  • démarrer l'instance Oracle.
  • démarrer le processus d'écoute (listener)
  • ou pour lancer des opérations de récupération.
Si au contraire, la base de données est déjà démarrée, une page Login est affichée vous demandant votre "nom utilisateur" et "mot de passe" autorisé à accéder à Database Control.. Connectez-vous en tant que SYSDBA ou SYSOPER pour vous doter de privilèges d'administration spécials.
Le rôle DBA n'inclut pas les privilèges SYSDBA et SYSOPER qui permettent à un administrateur d'accéder à l'instance même si la base n'est pas ouverte et d'exécuter des tâches d'administration telles que la création ou la suppression d'une base de données, lancer STARTUP et SHUTDOWN, placer une base en mode archivelog.
SQL*Plus et iSQL*Plus
Pour manipuler  les données dans la base via des instruction SQL (interrogation, insertion, suppression et mise à jour),  vous pouvez utiliser les outils SQL*Plus et iSQL*Plus. "iSQL*Plus" est une interface graphiqe fournissant un accès via web. Voici les urls à utiliser :
  • "http://hostname:5560/isqlplus"  et
  • "http://hostname:5560/isqlplus/dba".
"5560" est le port HTTP de iSQL*Plus. Vérifiez-le dans le fichier "$ORACLE_HOME/install/portlist.ini"

Pour pouvoir utiliser l'interface  iSQL*Plus, le processus correspondant côté serveur doit être démarré (commande isqlplusctl start)

SQL*Plus  est un outil en mode ligne de commande. Pour y accéder, lancez à  l'invite de commande :
  • $ sqlplus /nolog" et puis :
    SQL> connect nom_utilisateur/mot_ de_ passe.
SQL*Plus se connecte alors au compte utilisateur de la base de données par défaut.

Pour lancer le script "batch.sql" par exemple, entrez la commande suivante :
  • SQL> @batch.sql
Fichiers SPFILE ou PFILE

Pour démarrer une instance, le serveur Oracle doit lire le fichier de paramètres d'initialisation SPFILE ou PFILE

Le SPFILE (Fichier de paramètres persistant) est un fichier binaire recherché automatiquement au démarrage de l'instance. Son nom par défaut est spfile<SID>.ora.  Le fichier SPFILE est recommandé du fait que les paramètres d'initialisation sont  gérés dynamiquement dans un fichier persistant côté serveur.  il est modifié par le serveur Oracle.
Le PFILE (Fichier de paramètres statique) est un fichier texte recherché automatiquement au démarrage de l'instance en l'absence du fichier SPFILE. Il est modifié manuellement.. Son nom par défaut est : init<SID>.ora (dans "$ORACLE_HOME/dbs" ). Les modifications y sont apportés manuellment et ne prennent effet qu'après démarrage suivant de l'instant.

Vous pouvez créer un fichier SPFILE à partir d'un fichier PFILE via la commande suivante (instance démarrée ou non) :

CREATE SPFILE = ‘$ORACLE_HOME/dbs/spfileDBA01.ora’
FROM PFILE = ‘$ORACLE_HOME/dbs/initDBA01.ora


Les paramètres d'initialisation permettent entre autres de spécifier :
  • le nom de la base de données à laquelle l'instance est associée
  • l’emplacement physique des fichiers de contrôle
  • le répertoire de destination, par défaut, des fichiers de données (datafiles)
  • la destination, par défaut, des fichiers de journalisation (redo log files)
  • les valeurs affectées aux structures mémoire SGA
  • le tablespace d’annulation
  • ...etc
Vous pouvez utiliser Enterprise Manager pour afficher les paramètres d'initialisation et les modifier (lien "All Initialization Parameters "  dans "Database Administration").