Installation d'Oracle 9i

Fabien Celaia

Ce document a pour unique but de donner à un débutant une méthode pour installer Oracle 9i pas-à-pas. ♪

- Titre : Installation d'Oracle 9i

- Auteur : Fabien Celaia

- Parution : 1 août 2003

- Mise à jour : 11 octobre 2004

- Licence : Copyright ® 2003 Fabien Celaia. Aucune reproduction, même partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc. sans l'autorisation expresse de l'auteur. Sinon vous encourez selon la loi jusqu'à trois ans de prison et jusqu'à 300 000 € de dommages et intérêts.

Sommaire

- Ressources

- Installation du logiciel

- Création d'une première base de données

- Configuration de la connectique

- Installation via fichier de réponses

- Ma première connexion

Ressources

Sachez avant tout que, comparativement à ses concurrents, Oracle est extrêmement gourmand en ressources (mémoire et disque). Il est en effet très difficile de dissocier le moteur SGBDR des composants annexes, ceux-ci étant plus ou moins incorporés à l'installation. Partant installer un moteur SGBDR, vous vous trouverez sans vous en rendre compte avec un environnement complet de développement, un serveur applicatif Apache, un pare-feu, etc.

Expérience douloureuse faite, assurez-vous

- d'avoir des droits Administrateurs/root ;

- d'avoir installé au préalable un JDK 1.1.3 sur la machine cible ;

- de ne pas faire une installation à distance utilisant des outils terminal-X de type Exceed.

À relever qu'il n'est malheureusement pas possible d'installer Oracle via script (= sans passer par la lourde interface graphique JVM et le mode interactif). Pas très sympa pour les DBA habitués à planifier leurs scripts d'installation ou utilisant des serveurs distants…

Installation

Taille (sous Windows)

Entreprise (version complète)

2.59 Go

Standard

2.46 Go

Personnelle (monoutilisateur)

2.49 Go

Client runtime

198 Mo

Client administrateur

798 Mo

Installation du logiciel

Insérons le premier des trois CD.

Si l'autorun ne démarre pas, lançons manuellement setup.exe.

Cliquons ensuite sur Démarrer l'installation ou, si vous n'en êtes pas à votre première installation, sur Installer/Désinstaller les produits

Remarquons que la langue utilisée par l'Installer dépend de celle utilisée par votre système d'exploitation.

Si une version Oracle n'est plus utile et existe encore, commencez par la supprimer via le bouton Désinstaller les produits. Sinon, bouton Suivant.

C'est ici que nous déterminons la variable ORACLE_HOME, c'est-à-dire l'endroit physique où le logiciel Oracle sera installé. Choisissez d'emblée un disque sur lequel il y a 3 Go de libres (hormis pour une installation pure cliente).

Choix du produit à installer. Nous sommes intéressés à installer le serveur et son client sur notre machine et choisissons donc la 1re option.

Notez le bouton Langue du produit

Si cela vous intéresse, vous pouvez toujours ajouter un langage. Sinon, si l'anglais vous suffit, vous pouvez allègrement sauter ce menu.

Passons maintenant au choix des produits à installer

Choisissons l'installation standard afin de ne pas se priver du plaisir de configurer la couche réseau

Dans son processus d'installation, Oracle inclut la création de la 1re base. Par souci de clarté, nous dissocierons ces deux processus et exécuterons cette tâche dans le chapitre suivant.

En termes d'usine à gaz, en voilà encore une cheminée : si vous effectuez une installation d'Oracle sous Windows, Oracle configure automatiquement un service MTS. Pour cela, il lui faut un no de port :

Voici donc le résumé des options choisies

Si quelque chose vous semble louche, il est encore temps de revenir en arrière pour apporter les corrections voulues.

Et c'est parti : le temps d'une bonne pause café…

… qui ne devrait pas vous faire oublier de changer les CD !

Voilà, c'est fini. Pendant tout ce temps, Oracle a même pris le temps de configurer un serveur http Apache.

Vous pouvez choisir le bouton Quitter.

L'installation du logiciel s'est apparemment bien déroulée.

Création d'une première base de données

Notons que pour l'instant, certains services ont été installés sous NT, mais aucun n'est démarré. Voici leur liste exhaustive :

Nom du service

Status

Startup Type

Oracle OLAP 9.0.1.0.1

Manual

Oracle OLAP Agent

Manual

OraclOracle9iAgent

Automatic

OracleOracle9iClientCache

Manual

OracleOracle9iHTTPServer

Automatic

OracleOracle9iPagingServer

Manual

OracleOracle9iSNMPPeerEncapsulator

Manual

OracleOracle9iSNMPPeerMasterAgent

Manual

Pour démarrer sans douleur, nous allons créer notre première base de données en utilisant l'assistant : Menu Oracle - Oracle9i -> Configuration and Migration Tools -> Database Configuration Assistant.

Nous voulons créer une base. Choisissons donc la 1re option.

Pour permettre à l'assistant de configurer la base de données le plus correctement possible, un choix s'offre à vous :

Si vous décidez d'optimiser votre base pour l'utilisation de select massifs sur de très grosses tables, au détriment des modifications, choisissez l'option Datawarehouse.

Choisissez Transaction Processing si votre environnement est axé sur des mises à jour nombreuses et concurrentes, avec un grand nombre d'utilisateurs.

Si votre cœur balance, optez pour General Purpose.

Voici deux informations primordiales qu'il vous faut saisir et ne pas mélanger… et dont il faudra vous souvenir :

- le nom global Oracle (de type NomDeLaBase.domain.extension) ;

- l'identificateur système Oracle, ou SID. Ce dernier ne devait pas dépasser quatre caractères dans les versions précédentes : cette limite a fort heureusement été bannie dans la version 9.

Nous allons maintenant définir comment Oracle va gérer ses connexions utilisateurs. Dans notre cas de figure (peu d'utilisateurs concurrents), nous pouvons opter pour la première option.

Compte tenu que le poste que l'on utilise n'est visiblement pas dédie à Oracle, on ne lui attribue que 50 % de la mémoire disponible (en espérant que cela soit suffisant : dans mon exemple, la machine a 512 Mo de RAM).

Oracle a défini pour nous un certain nombre de fichiers (de contrôle, de données, de redo log, de journalisation…). Plus tard, vous pourrez les déplacer pour des raisons de place, de sécurité… Nous nous cantonnons pour l'instant aux valeurs par défaut.

Nous pourrions ici sauvegarder nos options comme base modèle. Nous n'aurons pas pour l'instant cette prétention.

Voici un récapitulatif des options que nous avons choisies. Après une dernière validation, la génération de la base commence.

Chaque base de données est accessible par des utilisateurs particuliers. Nous allons pouvoir les gérer dans l'écran qui suit.

Relevons les deux utilisateurs Oracle système que sont SYS et SYSTEM.

Dès la version 9.0.2, le système vous demande de leur spécifier un mot de passe bien particulier, ceci pour faire fi des problèmes de sécurité relatifs aux mots de passe par défaut (avant, seul SYS devait être changé, SYSTEM pouvant maintenir le mot de passe manager.

Lorsque ceci est fait, la génération de la base est terminée.

Configuration de la connectique

Étant en architecture Client/Serveur, il va falloir maintenant configurer la couche réseau avec que Serveur et Clients puissent communiquer. Démarrons donc le programme Oracle - Oracle9i -> Configuration and Migration Tools -> Net Configuration Assistant.

Voici le menu principal de l'assistant. Nous allons commencer par le module d'écoute du serveur.

Nous choisissons donc d'ajouter un module d'écoute. Par ce biais, nous autorisons le serveur Oracle à écouter sur un port particulier de la machine si un client lui envoie une requête.

Déterminons un nom pour ce module d'écoute.

Nous devons choisir un protocole réseau (au minimum) qui sera utilisé. Nous optons pour le protocole le plus répandu, à savoir le TCP-IP.

Nous déterminons le port d'écoute. Ici, deux écoles s'affrontent pour des raisons de sécurité: les DBA qui prônent le maintien du port par défaut qu'Oracle propose (1521), et ceux pour lesquels ceci constitue une faille dans la sécurité. Partant du fait que la plupart des serveurs dignes de ce nom incorporent un pare-feu (firewall), nous garderons pour commencer le port par défaut.

Pour l'instant, un seul module nous suffit.

Choisissons maintenant une méthode de résolution de noms.

Voici les divers choix qui s'offrent à nous. Il est inutile de compliquer en ajoutant trop de résolution. Normalement, le système en a présélectionné une par défaut.

Fin de la configuration de la résolution des noms (en fait, il n'y avait rien à faire).

Après avoir configuré le serveur pour qu'il écoute le client, il va nous falloir configurer le client pour qu'il sache à qui parler.

Pour chaque client, il faudra donc configurer un service réseau en local. On le verra plus tard, la distribution d'un unique fichier sur tous les clients sera suffisante.

Compte tenu de quelques problèmes de compatibilité descendante avec les versions pré8, il est nécessaire de spécifier si le serveur utilise une version plus ou moins récente.

Donnons ensuite un nom au service. Par habitude on donne généralement le nom SID

Voici venu le temps du choix du protocole. C'est le protocole TCP-IP qui s'impose généralement.

Le serveur de données va utiliser un port d'écoute pour communiquer avec ses clients. Il faut donc spécifier

- l'adresse IP de la machine hébergeant le serveur Oracle (ou son nom s'il est reconnu par le DNS) ;

- le n° de port sur lequel il communiquera. En standard, Oracle utilise le port 1521. Si vous avez activé un pare-feu sur le serveur, n'oubliez pas d'ouvrir ce port.

Cet écran vous permet alors de tester la connectivité ainsi configurée. Il est fortement conseillé de perdre quelques minutes à ce test qui en sauvera plus d'une plus tard.

Si, comme moi, vous avez modifié les logins par défaut, vous pourriez vous retrouver avec ce type d'erreur. Pas de panique, il suffit de changer de connexion grâce au bouton adéquat.

Voilà, calibré sur ce que nous avions spécifié lors de la configuration des utilisateurs

Visiblement, tout est en ordre maintenant.

Nous attribuons maintenant un nom au service réseau précédemment créé. Il va nous faciliter la tâche plus tard.

Il est possible de configurer plusieurs services. Nous ne sommes pas intéressés ici.

Voilà! La configuration de la couche réseau est faite.

Installation via fichier de réponses

Si vous ne souhaitez pas rester derrière votre écran à remplir cette kyrielle de boîtes de dialogues, il est possible de lancer l'Installer en lui spécifiant un fichier de réponses qui fera, lorsqu'il aura été correctement rempli, la majeure partie de ces tâches fastidieuses.

Exemple de fichier de réponses

[General]
RESPONSEFILE_VERSION=1.7.0

[SESSION]
FROM_LOCATION="w:\stage\products.jar"
FROM_LOCATION_CD_LABEL="Oracle9i"
NEXT_SESSION_RESPONSE=
ORACLE_HOME="d:\oracle\9i"
ORACLE_HOME_NAME="O9i"
TOPLEVEL_COMPONENT={"oracle.server","9.2.0.1.0"}
DEINSTALL_LIST={"oracle.server","9.2.0.1.0"}
SHOW_SPLASH_SCREEN=false
SHOW_WELCOME_PAGE=false
SHOW_COMPONENT_LOCATIONS_PAGE=false
SHOW_CUSTOM_TREE_PAGE=false
SHOW_SUMMARY_PAGE=FALSE
SHOW_INSTALL_PROGRESS_PAGE=TRUE
SHOW_REQUIRED_CONFIG_TOOL_PAGE=FALSE
SHOW_OPTIONAL_CONFIG_TOOL_PAGE=false
SHOW_RELEASE_NOTES=false
SHOW_END_SESSION_PAGE=false
SHOW_EXIT_CONFIRMATION=false
NEXT_SESSION=false
NEXT_SESSION_ON_FAIL=false
SHOW_DEINSTALL_CONFIRMATION=FALSE
SHOW_DEINSTALL_PROGRESS=true
LOCATION_FOR_DISK2="W:\"
LOCATION_FOR_DISK3="W:\"

[oracle.server_9.2.0.1.0]
COMPONENT_LANGUAGES={"fr"}
INSTALL_TYPE="EE"
s_cfgtyperet="Software Only"

[oracle.options.ops_9.2.0.1.0]
s_rawDeviceName=

[oracle.apache_9.2.0.1.0]
s_jservPort=
s_apachePort=
b_autoStartApache=

Des exemples de fichiers similaires se trouvent sous le CD d'installation 1, dans le répertoire Response.

Modifiez-le donc à votre convenance, et lancez-le via

Z:\>setup -responsefile c:\temp\monInstallO9i.res

… dans la mesure où votre CD est l'unité z: et votre fichier de réponses a été sauvegardé sous c:\temp\monInstallO9i.res

Ma première connexion

Exemple sous Windows, dans une fenêtre de commande

Microsoft Windows 2000 [Version 5.00.2195]
(C) Copyright 1985-2000 Microsoft Corp.
C:\>sqlplus system/MotDePasse@ORACLEDB
SQL*Plus: Release 9.2.0.1.0 - Production on Ma Fev 3 14:02:15 2004
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
ConnectT a :
Oracle9i Enterprise Edition Release 9.2.0.1.0 - Production
With the Partitioning, OLAP and Oracle Data Mining options
JServer Release 9.2.0.1.0 - Production
SQL> desc DICTIONARY
Nom NULL ? Type
----------------------------------------- -------- ----------------------------
TABLE_NAME VARCHAR2(30)
COMMENTS VARCHAR2(4000)
SQL>exit

Félicitons-nous. Nous en avons finalement fini avec notre première installation d'Oracle. Le plus dur reste à venir : configurer et administrer correctement ce serveur de données… mais ceci est une autre histoire.