TME Installation d'Oracle sous linux
Préparation
Lire attentivement le manuel d'installation rapide : Quick Install Guide (version 11G pour linux64, aout 2011)
- Ne pas suivre à la lettre les étapes du guide d'installation mais les ajuster selon les précisions indiquées ci-dessous.
- Attention ce TME nécessite d'être root pour certaines étapes de l'installation. Les étudiants doivent prendre leurs responsabilités et ne pas endommager les machines mises à leur disposition : ne pas remplir entièrement un disque, ne pas créer d'autre utilisateur, ne pas endommager les fichiers de configuration de l'OS, etc (voir la charte d'utilisation des ressources informatiques).
Démarche
Etape 1 : Pré-installation
Recenser les caractéristiques de la machine (RAM, disque, version de l'OS)
- RAM en Kilo-octets = valeur retournée par la commande grep MemTotal /proc/meminfo
- il faut au moins 5GB d'espace disponible dans /usr (commande : df -h /usr)
Configurer le noyau linux (/etc/sysctl.conf, /etc/security/limits.conf, /etc/pam.d/login)
- adapter les exemples fournis dans le /Vrac/ABDR.
- cp /etc/sysctl.conf /etc/sysctl.conf-original
- cp /Vrac/ABDR/sysctl.conf /etc/sysctl.conf
- ajuster la valeur en octets de kernel.shmmax ( = moitié de la RAM en octect = RAM*512)
- appliquer la configuration sans rebooter : /sbin/sysctl -p
Créer l'utilisateur oracle et les groupes (voir le guide, page 19)
- /usr/sbin/groupadd oinstall
- /usr/sbin/groupadd dba
/usr/sbin/useradd -g oinstall -G dba -d /usr/oracle oracle
- patienter lors de la création de l'utilisateur (cela peut durer plusieurs minutes)
- ne pas oublier l'option -d /usr/oracle de la commande useradd (indique l'emplacement du home d'oracle)
tous les étudiants choisissent le même mot de passe pour l'utilisateur oracle
- passwd oracle
Créer l'arborescence des répertoires qui contiendront le logiciel et la base.
- mkdirhier /usr/u01/app/oracle/product/
- affecter oracle comme propriétaire des répertoires
- chown -R oracle:oinstall /usr/u01
- chmod -R g+w /usr/u01
Créer un lien symbolique /u01 vers la racine de l'arborescence
- ln -s /usr/u01 /u01
Editer le fichier /etc/redhat-release
- remplacer le numéro de version 7 par 4
- il faudra restaurer le fichier original en fin d'installation
Téléchargement
lancer le navigateur (firefox) en tant qu'oracle (pas en tant qu'étudiant)
- ajuster le proxy http ou socks
- configurer votre navigateur pour que le dossier de téléchargement soit /usr/oracle (Firefox: outils>options>général>téléchargement)
- télécharger le logiciel et la documentation depuis le site technologique d'Oracle, et les enregistrer dans /usr/oracle
- ne pas enregistrer sur votre bureau les fichier téléchargés (leur volume dépasse votre quota d'étudiant)
autre possibilité : récupérer le fichier depuis le /Vrac
- cp -r /Vrac/ABDR/oracle11G_download /usr/oracle
- chmod 755 /usr/oracle
décompresser le logiciel
- cd /usr/oracle/oracle_download
- unzip linux.x64_11gR2_database_1of2.zip
- unzip linux.x64_11gR2_database_2of2.zip
Etape 2 : Installation
Lancement
- cd /usr/oracle/oracle_download/database
- ./runInstaller
- Ne pas saisir d'adresse mail
- Cocher l'option d'installation avancée
- Installer la version Enterprise
Ajuster l'emplacement du logiciel oracle
- /usr/u01/app/oracle/product/11.0.2/dbhome_1
Choisir un nom pour la BD créée : baseNN.infop6.jussieu.fr (sur la machine ari-31-201-NN)
- l'identifiant SID correspond au premier terme du nom global de la base (ici c'est baseNN)
- Juste avant la fin de l'installation, un message vous le demande d'appliquer 2 scripts en tant que root.
Etape 3 : Post installation
Version Linux : restaurer le fichier /etc/redhat-release
- remettre numéro de version correct: 7
démarrage automatique
En tant que root, changer le propriétaire du fichier oratab
- chown oracle.oinstall /etc/oratab
En tant qu'oracle, éditer /etc/oratab pour indiquer à l'utilitaire dbstart quelle instance démarrer.
- remplacer le drapeau N (no) par Y (yes) à la fin de la ligne associée à la base.
- Optionnel (à ne pas faire cette année): ajouter dbstart en exécution automatique au boot de la machine
configurer les variables d'environnement pour oracle
- su - oracle
- cp /Vrac/ABDR/.bash_profile $HOME
- éditer le .bash_profile et ajuster le nom de votre base ORACLE_SID
- source .bash_profile
Rectifier les scripts pour démarrer et arrêter Oracle
- cd $ORACLE_HOME/bin
- (à ne pas faire) mv dbstart dbstart-original; cp /Vrac/ABDR/dbstart .
- exit
Installer la documentation
- mkdir /usr/oracle/doc
- cp /Vrac/ABDR/doc10G/B19306_01.zip /usr/oracle/doc
- cd /usr/oracle/doc
- unzip B19306_01.zip
Autoriser l'usage du client oracle à tous les utilisateurs
- cd /usr/u01
- chmod -R o+r .
- find . -type d -exec chmod o+x {} ';'
Configuer votre session personnelle pour pouvoir lancer le client oracle
en tant qu'étudiant (pas en tant qu'oracle)
- cd ~
- cp /Vrac/ABDR/.bash_profile $HOME/profile_oracle
ajouter à la fin de votre .bash_profile la commande :
- source profile_oracle
Etape 4 : Usage (voir FaqInstallationOracle)
- se reconnecter en tant qu'oracle : su - oracle (ne pas oublier le tiret)
- vérifier la valeur des variables ORACLE_HOME, ORACLE_SID, TNS_ADMIN, LD_LIBRARY_PATH, PATH.
vérifier si le module d'écoute fonctionne
- lsnrctl status
vérifier si la base est ouverte
sqlplus "/ as sysdba"
- SQL> show sga (affiche la quantité de mémoire allouée à oracle)
- SQL> exit
Seulement si la base n'est pas déjà démarée
- lsnrctl start
sqlplus "/ as sysdba"
- SQL> startup
- SQL> exit
Connexion: sqlplus utilisateur/mot_de_passe@baseNN
- l'utilisateur est soit system, soit un nouvel utilisateur que vous aurez créé
Si vous tentez de démarrer une base qui est déjà démarrée, cela produit une erreur.
- ORA-01102: cannot mount database in EXCLUSIVE mode,
- Voir la notice en (anglais) pour résoudre ce problème.
Autre possibilité pour démarrer une base:
En tant qu'oracle (su - oracle), invoquer la commande :
- dbstart $ORACLE_HOME
- vérifier le log du démarrage: tail $ORACLE_HOME/startup.log
Pour éteindre une base:
En tant qu'oracle (su - oracle), invoquer la commande :
- dbshut $ORACLE_HOME
Eventuellement, installer chez soi Oracle Express Edition