Guide d'installation de la base de données ORACLE 10g (10.2.0.1) pour linux FEDORA CORE 4. 1 - Quelques informations à propos de ce guide Ce guide décrit comment installer la base de données Oracle 10g en utilisant les options d'installation par défaut. Les tâches décrites dans ce guide Les procédures dans ce guide décrivent comment : Configurer votre système afin de pouvoir utiliser la base de données Oracle 10g Installer la base de données Oracle 10g dans un file système local Configurer une base de données oracle qui utilise un file system local comme stockage de ses fichiers Après une installation réussie : La base de données que vous aurez créée et le process listener Oracle Net tourneront sur votre système. "Oracle Enterprise Manager Database Control" et "ISQL*Plus" tourneront et pourront être utilisés via un navigateur WEB Une version noeud-unique du démon des services de synchronisation de Cluster Oracle (CSS). tournera et sera configuré pour démarrer automatiquement au démarrage de votre système. 2 - Se logger au système en tant que root Avant d'installer le logiciel Oracle, vous devez effectuer un certain nombre de tâches en tant qu'utilisateur root Note : Vous devez installer le logiciel d'une station de travail X-window, d'un terminal X, ou d'un PC ou d'un autre système avec un logiciel server X installé. Démarrez une session terminal par exemple xterm. Si vous n'êtes pas connecté en tant que root, tapez : su - root #password : 3 - Vérifier les besoins au niveau HARDWARE Le système doit avoir les caractéristiques suivantes: : Mémoire physique (RAM) au minimum 512 Mo (524288 Ko)
Espace de Swap au minimum 1Go (1048576 Ko) ou 2 fois la taille de la RAM. Sur des systèmes avec 2 Go ou plus de RAM, l'espace de SWAP peut être comprise entre 1 et 2 fois la taille de la RAM. L'espace disque dans /tmp au minimum 400 Mo (409600 Ko) L'espace pour les fichiers du logiciel au minimum 2.5 Go (2621440 Ko). Cette valeur inclut 1 Go (1048576 Ko) d'espace disque nécessaire à l'installation des produits de la base de données Oracle 10g par le "companion CD" (optionnel, mais recommandé) L'espace disque pour les fichiers de la base de données au minimum 1.2 Go (1258290 Ko) Afin de vérifier que le système possède les caractéristiques nécessaires, il faut, a. Pour déterminer la taille de la RAM, il faut taper la commande suivante : #grep MemTotal /proc/meminfo b. Pour vérifier la taille de la zone de swap, il faut taper : #grep SwapTotal /proc/meminfo ou #free ou #cat /proc swaps On peut créer temporairement une zone de swap supplémentaire, pour cela, il faut taper: #su -root #dd if=/dev/zero of=tmpswap bs=1k count=900000 #chmod 600 tmpswap #mkswap tmpswap #swapon tmpswap Pour la supprimer, il faut taper : #su - root #swapoff tmpswap #rrm tmpswap c. Il faut également vérifier l'espace disque libre dans /tmp, pour cela on tape la commande suivante : #df -k /tmp S'il y a moins que 400Mo de libre sur le disque il faut supprimer dans /tmp, les fichiers inutiles.
On peut également créer si cela ne suffit pas, créer un répertoire tmp dans un autre filesystem. #su - root #mkdir /<autre filesystem>/tmp #chown root.root /<autre filesystem>/tmp #chmod 777 /<autre filesystem>/tmp #export TEMP=/<autre filesystem>/tmp //utilisé par ORACLE #export TMPDIR=/<autre filesystem>/tmp //utilisé par des programmes LINUX Une fois l'installation d'oracle terminée, on enlève le répertoire temporaire : #su - root #rmdir /<autre filesystem>/tmp #unset TEMP #unset TMPDIR d - Pour déterminer la quantité d'espace disque disponible sur le système, on peut entrer la commande suivante: #df -k Cette commande affiche l'espace disque utilisé sur tout les file systems montés. Pour bien faire, il faudrait avoir 3.7 Go de libre soit en 2 files systems (2.5 Go pour le logiciel Oracle et 1.2 Go pour la base de données préconfigurée), soit en un seul. 4 - Vérifier les besoins au niveau logiciel. Le système doit avoir au minimum les caractéristiques suivantes: Les groupes de packages suivants doivent être installés : X Window System GNOME Desktop Environment Editors Graphical Internet Text-based Internet Server Configuration Tools Development Tools Administration Tools System Tools
Installer les packages supplémentaires suivants: A l iut, pour les récupérer, il faut : Ouvrir un navigateur Aller sur ftp://tux.iut.fr/ Aller dans le répertoire Install Fedora RPMS Click droit, copie adresse du lien Dans votre fenêtre vous tapez rpm ivh et coller le lien. * Nota : Pour vérifier si les packages sont installés on tape la commande suivante #rpm -q <NOM DU PACKAGE> ou #rpm -qa pour avoir l'ensemble des packages installés dans le système dans Fedora/RPMS Disk1 rpm -Uvh setarch-1.7-3.i386.rpm rpm -Uvh tcl-8.4.9-3.i386.rpm dans Fedora/RPMS du Disk2 rpm -Uvh xorg-x11-deprecated-libs-6.8.2-31.i386.rpm rpm -Uvh openmotif-2.2.3-10.i386.rpm rpm -Uvh compat-db-4.2.52-2.i386.rpm dans Fedora/RPMS du Disk3 rpm -Uvh compat-libstdc++-33-3.2.3-47.fc4.i386.rpm rpm -Uvh compat-gcc-32-3.2.3-47.fc4.i386.rpm rpm -Uvh libaio-0.3.104-2.i386.rpm dans fedora/rpms du Disk4 rpm -Uvh compat-gcc-32-c++-3.2.3-47.fc4.i386.rpm Pour savoir quelle est la distribution de linux installées, il faut entrer la commande suivante: #cat /etc/issue ou
#uname -a. 5 - Créer les groupes et l'utilisateur au niveau UNIX Les groupes et utilisateur suivant doivent exister au niveau UNIX : - le groupe oinstall qui est le groupe propriétaire des fichiers oracle - Le groupe dba qui est le groupe des utilisateurs "granted" avec le privilège système SYSDBA - L'utilisateur oracle, propriétaire du logiciel ORACLE a - On peut vérifier si les groupes oinstall et dba existent déjà. Pour cela, on tape: # grep oinstall /etc/group #grep dba /etc/group Si ces commandes retourne le nom du groupe, alors le groupe existe déjà. b - Si les groupes n'existent pas, il faut les créer : #/usr/sbin/groupadd oinstall #/usr/sbin/groupadd dba #/usr/sbin/groupadd oper c - Il faut vérifier si l'utilisateur oracle existe et s'il est correctement rattaché aux bons groupes. Pour cela, il faut taper la commande suivante: #id oracle Si l'utilisateur oracle existe déjà, la commande affiche les informations concernant les groupes auxquels il appartient. On doit donc avoir la ligne suivante indiquant que le primary group est oinstall et le secondary group est dba uid=502(oracle) gid=502(oinstall) groups=502(oinstall),503(dba) d - Si nécessaire, il faut exécuter une des actions suivantes: - Si l'utilisateur oracle existe, mais le primary group n'est pas oinstall ou n'est pas membre du groupe dba, entrez la commande suivante: #/usr/sbin/usermod -g oinstall -G dba oracle - Si l'utilisateur oracle n'existe pas, il faut entrer la commande suivante pour le créer : #/usr/sbin/useradd -g oinstall -G oinstall,dba oracle Cette commande crée l'utilisateur oracle et spécifie que: oinstall est le primary group dba est le secondary group e - Entrez la commande suivante pour fixer le mot de passe de l'utilisateur oracle : #passwd oracle
6 - Créer les répertoires nécessaires Il faut créer les répertoire suivants et spécifier les bonnes permissions, le bon utilisateur et groupe. - /u01/app/oracle (le répertoire de la base oracle) - /u02/oradata (un répertoire optionnel pour les fichiers de données oracle) Le répertoire de la base oracle doit avoir 2.5 Go de libre ou 3.7 Go si on choisit de ne pas créer un répertoire séparé pour les fichier de données d'oracle. Donc pour déterminer l'endroit où on va créer ces répertoire, il faut : a - Entrer la commande suivante pour afficher toutes les informations concernant les file systèmes montés. #df -k b - Grâce à cette affichage, vous allez pouvoir déterminer dans quel file système, vous allez pouvoir créer les ou le répertoire. c - Dans la suite, je vais supposer que /u01 est le répertoire pour le logiciel et /u02 est le répertoire utilisé pour les fichiers de la base. Vous les remplacerez par vos propres file systèmes. - #mkdir -p /u01/app/oracle/product/10.2.0/ - #mkdir /u02/oradata - chown -R oracle.oinstall /u01/app/oracle et chown R oracle.dba /u02/oradata - chown -R 775 /u01/app/oracle /u02/oradata 7 - Configurer les paramètres du kernel Si les valeurs des paramètres du kernel sont différentes des valeurs ci-dessus (inférieures), vous devez : - En utilisant un éditeur de texte (vi par exemple), vous ouvrez le fichier /etc/sysctl.conf et vous ajouter à la fin de ce dernier les lignes suivantes: kernel.shmall = 2097152 kernel.shmmax = 2147483648 kernel.shmmni = 4096 # semaphores: semmsl, semmns, semopm, semmni kernel.sem = 250 32000 100 128 fs.file-max = 65536 net.ipv4.ip_local_port_range = 1024 65000 net.core.rmem_default=262144 net.core.rmem_max=262144 net.core.wmem_default=262144 net.core.wmem_max=262144
- Lancer la commande suivante pour changer les valeurs des paramètres du kernel : #/sbin/sysctl -p Fixer les limites du shell pour l'utilisateur oracle Pour augmenter les performances d'oracle sur un système linux, vous devez fixer les limites suivantes pour l'utilisateur oracle : Le nombre maximum de descripteurs de fichiers ouverts est fixé à 65536 et s'appelle dans le fichier limits.conf nofile Le nombre maximum de processus autorisés pour un seul utilisateur est fixé à 16384 et s'appelle dans le fichier limits.conf nproc Pour fixer ces valeurs, il suffit ajouter les lignes suivantes au fichier /etc/security/limits.conf : * soft nproc 2047 * hard nproc 16384 * soft nofile 1024 * hard nofile 65536 Ajouter la ligne suivante dans le fichier /etc/pam.d/login, à condition que cette dernière n'existe pas déjà : session required /lib/security/pam_limits.so Vérifiez que dans /etc/hosts il y ait un nom pour le serveur : <Adresse IP> <NOM COMPLET DE LA MACHINE> <NOM DE LA MACHINE> par exemple à l IUT 172.20.4.8 tp4-pc08.iut.fr tp4-pc08 Allez récupérer le fichier 10201_database_linux32.zip sous ftp://tux.iut.fr/pub/linux/oracle/10.2.0.1 Le placer dans / #unzip 10201_database_linux32.zip Rendre disable la sécurité de linux en éditant le fichier /etc/selinux/config, vérifiez bien que le flag SELINUX est disabled : SELINUX=disabled Login en root en tapant la commande suivante: xhost +<machine-name> Allez dans /etc Et faites :
#cp fedora-release fedora-release.old Ouvrez fedora-release à l aide de vi Remplacer le contenu du fichier par : redhat-4 - Se connecter en tant qu utilisateur oracle. #su oracle ouvrir le fichier.bash-profile de l utilisateur oracle à l aide d un éditeur de texte (vi par exemple). Ajoutez à la fin les variables d environnement oracle : # Oracle Settings export TMP=/tmp export TMPDIR=$TMP export ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/10.2.0/ export ORACLE_SID=exempleBD export ORACLE_TERM=xterm export PATH=/usr/sbin:$PATH export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jli b #LD_ASSUME_KERNEL=2.4.1; export LD_ASSUME_KERNEL if [ $USER = "oracle" ]; then if [ $SHELL = "/bin/ksh" ]; then ulimit -p 16384 ulimit -n 65536 else ulimit -u 16384 -n 65536 fi fi
8 Installation de la base de données ORACLE 10g Après avoir configuré l environnement de l utilisateur oracle, vous pouvez lancer l installation. Fermez votre session linux et ouvrez une session en tant qu utilisateur oracle Ouvrez une fenêtre xterm et tapez #cd /Disk1 #./runinstaller Suivez les impressions d écran. Pendant l installation, on peut vous demander de lancer orainstroot.sh. Il faudra donc ouvrir une autre fenêtre et en tant que root, taper : Oracle_base/oraInventory/orainstRoot.sh A la fenêtre Setup privileges, ouvrir une autre fenêtre et en tant que root, lancer le script suivant : #oracle_home/root.sh Appuyer sur return pour accepter les valeurs par défaut. Quand le script est terminé appuyez sur finish. Après l installation remettre le,redhat-release à la bonne valeur. Pour cela : #mv fedora-release.old fedora-release