Installation d’Oracle 8.1.7 sous Debian Etch/Lenny ou
Ubuntu
COLLABORATORS
TITLE:
Installation d’Oracle 8.1.7 sous Debian Etch/Lenny ou Ubuntu
ACTION NAME DATE SIGNATURE
WRITTEN BY Jean David TECHER May 9, 2010
REVISION HISTORY
NUMBER DATE DESCRIPTION NAME
Contents
1 Principe d’installation 1
2 Urls utilisées pour la rédaction de ce document 2
3 Paramétrage du noyau Linux 2
4 Installation de la Woody 3
4.1 Installation de debootstrap . . . 3
4.2 Méthode 1 - Debootstrap et Image DVD . . . 3
4.3 Méthode 2 - Debootstrap et référentiel en ligne des archives de Debian . . . 4
4.4 Diverses commandes avant de chrooter . . . 4
5 Préparation avant installation d’Oracle 5 5.1 Mise à jour du fichier source.list (si on a suivi la méthode 1) . . . 5
5.2 locales . . . 5
5.3 Installation des paquets . . . 6
5.4 Liens symboliques . . . 6
5.5 Java . . . 6
5.6 Compte oracle . . . 7
5.7 Groupes supplémentaires pour oracle et arborescence /u01 . . . 8
6 Installation d’Oracle en mode "Custom" (OUI) 8 6.1 Récupération du tar contenant l’installeur OUI . . . 8
6.2 Lancement d’OUI . . . 9
6.3 Application du patch . . . 29
6.4 Confirmation du lancement du listener par défaut (message contextuel en français) . . . 30
7 Migration de Oracle 8.1.7.0 vers Oracle 8.1.7.4.0 30 7.1 Où se le procurer? . . . 30
7.2 Installation . . . 31
7.3 Application du patch de linkage . . . 36
8 Test pour dbassist 37 9 Rendre Oracle indépendant du chroot 39 10 F.A.Q 40 10.1 Où trouver les sources pour les versions comme Oracle 8i pour Windows, Oracle 9 sous Linux, Oracle 10? . . . . 40
List of Figures
1 Etape 4 - Installation depuis un poste distant pour OUI . . . 1
2 utilisation de xhost . . . 8
3 Fenêtre de "bienvenue" de l’installeur . . . 9
4 Emplacement de l’ORACLE_HOME . . . 10
5 Groupe Linux réservé aux administrateurs Oracle . . . 11
6 Script nécessaire à l’Installeur . . . 12
7 Lancement du script orainstRoot.sh . . . 12
8 Choix du produit à installer. . . 13
9 Type d’installation: Installation personnalisée (Custom ) . . . 14
10 Liste des produits et choix du langage . . . 15
11 Langue choisie pour les produits à installer (français) . . . 16
12 Emplacement d’installation pour JRE . . . 17
13 Groupe et privilèges pour OSDBA/OSOPER . . . 18
14 Oracle Advanced Security: méthodes d’authentification possibles (facultatif) . . . 19
15 Emplacement de la JDK . . . 20
16 Création d’une base de données: Non . . . 21
17 Récapitulatif des choix effectués avant installation . . . 22
18 Installation des produits. . . 23
19 Script pour les droits sur les executables d’Oracle . . . 24
20 Lancement (en tant que root) du patch util à Net8 Assistant Configuration . . . 25
21 Lancement du script $ORACLE_HOME/root.sh pour l’obtention des droits suffisants sur les executables d’Oracle. 26 22 Net8 Configuration Assitant . . . 27
23 Fin de l’installation . . . 28
24 Confirmation de la fin de l’installation. . . 28
25 Vérification pour la variable source . . . 32
26 Récapitulatif d’installation pour le patch pour 8.1.7.4.0 . . . 33
27 Installation en cours . . . 34
28 Linkage en cours . . . 35
29 Fin de l’installation . . . 36
30 Lancement initial de dbassist . . . 38
31 Type de configuration possible . . . 39
1 Principe d’installation
Il faut avoir une machine avec une distribution basée sur Debian quelques Gigas de disponibles. Pour une installation sans base de données, prévoir au moins 1,5 GB. Une version comme la Ubuntu 9.04 ou une Debian Etch/Lenny fera amplement l’affaire .Tout se fait en 3 Etapes
Pour l’utilisation du l’installeur OUI (Oracle Universale Installer) en mode grapique, une seconde machine avc un serveur X s’avèrera nécessaire.
La procédure d’installation se compose de quatres étapes:
1. Paramétrage du noyau Linux
2. Installer la Woody en utilisant (debootstrap et chroot)
• L’initialisation repose soit sur une installation par une image ISO DVD ou depuis le site des archives de Debian. Il faudra ici choisir parmi l’un des ces deux méthodes possibles
• Initiation de l’arborescence par deboostrap
• Effectuer les divers montages nécessaires et chrooter 3. Préparation de l’environnement avant l’installation:
• Installer les divers paquets .deb
• Effectuer les divers liens symboliques
• Installer Java
• Préparer le compte d’Oracle
4. Effectuer l’installation grâce à OUI (Oracle Universal Installer):
• Procéder à l’installation pour Oracle 8.1.7.0.1
• Appliquer le patch pour Oracle 8.1.7.4.0
Pour l’étape 4, l’installation aura lieu en mode graphique depuis un poste distant ayant un serveur graphique. Sur le poste hébergeant le futur serveur Oracle seules les librairies clientes de X seront installées. Ce principe est repris sur le schéma ci-dessous:
Figure 1: Etape 4 - Installation depuis un poste distant pour OUI
Le serveur Oracle est ici dépourvu de serveur X,on installera que les librairies clientes de X pour profiter d’une installation graphique distance.
Il est aussi possible d’installer le serveur en mode silencieux mais un serveur X s’avère quand même nécessaire. Le mode silencieux n’est pas envisagée ici.
Warning
REMARQUE IMPORTANTE AVANT DE CONTINUER: Dans la configuration envisagée et illustrée ci-dessus, il est impératif de s’assurer que le serveur X autorise les connexions distantes. Par exemple, si vous êtes sous Gnome, comme moi, assurez-vous que les connexion xdmcp soient autorisées, notamment dans le fichier/etc/gdm/gdm.
confsection "[xdmcp] d’avoir, le paramètreDisallowTCPà false root@luxy:~# grep -i ^disallowtcp /etc/gdm/gdm.conf DisallowTCP=false
Il faudra veiller que le ou les firewalls laissent passer les connexion distantes entre les deux machines.
2 Urls utilisées pour la rédaction de ce document
La collecte d’informations issue des urls ci-dessous a permis l’élaboration de ce document
• http://wiki.nanthrax.net/NanthraxWiki/Wiki.jsp?page=DebianOracleInstall(installation sous Debian Sarge Testing), url désignée dans ce document par [REF]
• http://www.perumal.org/oracle/InstallOracleDatabase8ionRedHatLinux73.html(installation pour Red Hat 7.2)
• http://www.linux.com/learn/docs/ldp/666-Oracle8-on-RH7X-HOWTO(autre installation sous Red Hat)
3 Paramétrage du noyau Linux
Pour les besoins d’Oracle 8i, Oracle recommande d’adapter le noyau Linux. Au niveau des recommendations, on retiendra surtout
• Shared Memory : la taille maximale pour un segment de mémoire (SHMMAX) partagée devrait ⁽théoriquement être) de 0,5 * mémoire physique de la machine. Toutefois le maximum est fixé à 1 GB. Au maximum, on aura donckernel.
shmmax=1073741824
• Les sémaphores sont notamment utilisés par Oracle pour la gestion des accès concurrents aux données de la SGA...Les sémaphores sont directement modifés par les processus d’Oracle...
Pour un jeu de valeurs, on pourra ajouter les lignes suivantes dans le fichier /etc/sysctl.conf
#
# Paramètres pour Oracle 8i
#############################
kernel.shmall = 2097152 kernel.shmmax = 1073741824 kernel.shmmni = 4096
kernel.sem = 250 32000 100 128
Pour que ces paramètres soient pris en compte, on pourra soit démarrer le machine ou bien sysctl -p
4 Installation de la Woody
Cette version de la Woody a été retenue car c’est celle qui offre le plus de facilités pour une installation optimale (pas de soucis de links lors de l’installation).
4.1 Installation de debootstrap
Si debootstrap n’est pas encore installée apt-get install debootstrapAu niveau des occupations disque, on a (à tire d’exemple) root@bremko:~# mount /dev/sda3 /mnt/toto root@bremko:~# df -h /dev/sda3
Sys. de fich. Tail. Occ. Disp. %Occ. Monté sur /dev/sda3 23G 295M 22G 2% /mnt/toto
Warning
Comme évoqué dans au début de ce document, il est possible de procéder au déploiment de l’arborescence pour Woody à partir de debootstrap en utilisant l’une des deux méthodes suivantes
• METHODE 1:en se basant sur une image DVD qu’il faudra télécharger. L’inconvénient de cette méthode repose sur le fait de devoir télécharger le DVD et aussi de l’encombrement temporaire sur disque.
• METHODE 2: en procédant à une installation en ligne directement basée sur les paquets disponibles pour les anciennes releases de Debian. Ce qui est la méthode la plus rapide. Le site en question esthttp://archive.debian.org
4.2 Méthode 1 - Debootstrap et Image DVD
On télécharge l’ISO du DVD de la version 3.0 release candidate 6
wget ftp://ftp.gnome.org/cdimage/archive/img/3.0_r6-dvd/i386/debian-30r6-dvd-i386-binary-1. ←- iso
On monte l’ISO
mount -o loop debian-30r6-dvd-i386-binary-1.iso /cdrom On prépare le répertoire qui va accueillir la Woody
WOODY_CHROOT=/mnt/toto/woody-chroot On effectue le debootstrap
root@bremko:/media/samsung# debootstrap woody $WOODY_CHROOT file:/cdrom I: Retrieving Release
I: Retrieving Packages I: Validating Packages
I: Resolving dependencies of required packages...
I: Resolving dependencies of base packages...
I: Checking component main on file:/cdrom...
I: Retrieving adduser I: Validating adduser I: Retrieving apt-utils I: Validating apt-utils
I: Retrieving apt I: Validating apt I: Retrieving at .... .... ....
.... .... ....
.... .... ....
I: Extracting libreadline4...
I: Extracting hostname...
I: Installing core packages...
I: Unpacking required packages...
I: Configuring required packages...
I: Installing base packages...
I: Base system installed successfully.
4.3 Méthode 2 - Debootstrap et référentiel en ligne des archives de Debian
On prépare le répertoire qui va accueillir la Woody WOODY_CHROOT=/mnt/toto/woody-chroot mkdir -p $WOODY_CHROOT
On lance debootstrap en se basant sur le référentiel des achives de Debian
debootstrap woody $WOODY_CHROOT http://archive.debian.org/debian/
I: Retrieving Release I: Retrieving Packages I: Validating Packages
I: Resolving dependencies of required packages...
I: Resolving dependencies of base packages...
I: Checking component main on http://archive.debian.org/debian...
I: Retrieving adduser I: Validating adduser I: Retrieving apt I: Validating apt I: Retrieving apt-utils I: Validating apt-utils .... ...
.... ...
.... ...
I: Extracting sed...
I: Extracting shellutils...
I: Extracting slang1...
I: Extracting sysvinit...
I: Extracting tar...
I: Extracting textutils...
I: Extracting util-linux...
I: Extracting whiptail...
I: Installing core packages...
I: Unpacking required packages...
I: Configuring required packages...
I: Installing base packages...
I: Base system installed successfully.
4.4 Diverses commandes avant de chrooter
On copie les fichiers de configurations utilescp /etc/resolv.conf $WOODY_CHROOT/etc cp /etc/hosts $WOODY_CHROOT/etc
On effectue les divers points de montages habituelles mkdir $WOODY_CHROOT/sys
mount -t proc proc $WOODY_CHROOT/proc/
mount -t sysfs none $WOODY_CHROOT/sys mount -o bind /dev $WOODY_CHROOT/dev mount -o bind /tmp $WOODY_CHROOT/tmp Si on a suivi la méthode 1, on ajoutera le montage suivant mount -o bind /cdrom $WOODY_CHROOT/cdrom On chroote
chroot $WOODY_CHROOT
5 Préparation avant installation d’Oracle
Maintenant qu’on a chrooté, il faut préparer la Debian avant l’installation d’Oracle
5.1 Mise à jour du fichier source.list (si on a suivi la méthode 1)
Cette section est inutile si on a suivi la méthode 2. On a déjà chrooté . On va donc mettre le fichier /etc/apt/source.list à jour en effectuantapt-cdrom -m add. Celà nous permettra par la suite d’installer les .deb présents sur le DVD. Ce qui donnera
bremko:/# apt-cdrom -m add Using CD-ROM mount point /cdrom/
Identifying.. [630a62e8dd6a8930d342a6370797b14c-2]
Scanning Disc for index files.. Found 4 package indexes and 0 source indexes.
Found label ’Debian GNU/Linux 3.0 r6 _Woody_ - Official i386 Binary-1 (20050602)’
This Disc is called:
’Debian GNU/Linux 3.0 r6 _Woody_ - Official i386 Binary-1 (20050602)’
Reading Package Indexes... Done Wrote 8432 records.
Writing new source list
Source List entries for this Disc are:
deb cdrom:[Debian GNU/Linux 3.0 r6 _Woody_ - Official i386 Binary-1 (20050602)]/ unstable ←- contrib main non-US/contrib non-US/main
Repeat this process for the rest of the CDs in your set.
5.2 locales
Les locacles doivent être en configurées unset LANG
apt-get install locales
Prendre ce qu’il faut (au moins fr_FR.UTF-8). Pour mes propres besoins, je me suis contenté de [*] fr_FR ISO-8859-1
[*] fr_FR.UTF-8 UTF-8 [*] fr_FR@euro ISO-8859-15 puis
fr_FR@euro
5.3 Installation des paquets
On va installer les paquets par l’habituel apt-get
apt-get install make binutils gcc libstdc++2.10-glibc2.2 libstdc++2.10-dev libstdc++2.9- ←- glibc2.1 xlibs perl bzip2 less wget ssh vim unzip
Warning
Lors de l’installation des paquets des messages pour binutils, less et ssh apparaîtront. Prendre le choix par défaut
On vérifie les versions des binaires installés Pour Perl
monroe:/# LANG=C perl -version
This is perl, v5.6.1 built for i386-linux Copyright 1987-2001, Larry Wall
Perl may be copied only under the terms of either the Artistic License or the GNU General Public License, which may be found in the Perl 5 source kit.
Complete documentation for Perl, including FAQ lists, should be found on this system using ‘man perl’ or ‘perldoc perl’. If you have access to the Internet, point your browser at http://www.perl.com/, the Perl Home Page.
Pour gcc/g++
monroe:/# gcc -v
Reading specs from /usr/lib/gcc-lib/i386-linux/2.95.4/specs gcc version 2.95.4 20011002 (Debian prerelease)
monroe:/# g++ -v
Reading specs from /usr/lib/gcc-lib/i386-linux/2.95.4/specs gcc version 2.95.4 20011002 (Debian prerelease)
5.4 Liens symboliques
L’installeur d’Oracle s’attend à trouver certaines binaires à /bin. On va donc créer les divers liens symboliques ln -s /usr/bin/awk /bin/awk
ln -s /usr/bin/sort /bin/sort
ln -s /usr/bin/basename /bin/basename
5.5 Java
L’installion d’Oracle 8i disponible à http://download.oracle.com/docs/html/A87434_01/toc.htm conseille - pour l’installation - d’utiliser Java 1.1.8. Or pour la Woody on peut se contenter d’une version plus récente (voir [REF]). Pour l’installer,
Puis faire
1. Il faut se rendre àhttp://java.sun.com/products/archive/j2se/1.4.1_01/(prendre la version SDK pour Linux).
2. Le fichier à télécharger est j2sdk-1_4_1_01-linux-i586.bin. Il faut ensuite l’enregistrer dans $WOODY_CHROOT/usr/local/
3. Ensuite revenir au terminal du chroot puis cd /usr/local
chmod +x j2sdk-1_4_1_01-linux-i586.bin ./j2sdk-1_4_1_01-linux-i586.bin
4. Faire défiler la licence et l’accepter (yes)
5. On effectue un petit lien symbolique utile pour la suite ln -s /usr/local/j2sdk1.4.1_01 /usr/local/java
5.6 Compte oracle
On va effectuer la création du compte-utilisateur oracle et aussi les diverses variables d’environnement propres à Oracle (ORA- CLE_HOME, ORACLE_BASE etc...)
bremko:/usr/local# adduser oracle perl: warning: Setting locale failed.
perl: warning: Please check that your locale settings:
LANGUAGE = "fr_FR:fr:en_GB:en", LC_ALL = (unset),
LANG = "fr_FR.UTF-8"
are supported and installed on your system.
perl: warning: Falling back to the standard locale ("C").
Adding user oracle...
Adding new group oracle (1000).
Adding new user oracle (1000) with group oracle.
Creating home directory /home/oracle.
Copying files from /etc/skel Enter new UNIX password:
Retype new UNIX password:
passwd: password updated successfully Changing the user information for oracle
Enter the new value, or press return for the default Full Name []:
Room Number []:
Work Phone []:
Home Phone []:
Other []:
Is the information correct? [y/n] y
On met à jour son fichier .bash_profile en ajoutant les lignes suivantes (c’est le fichier/home/oracle/.bash_profile) unset LANG
unset LC_ALL unset LC_CTYPE
ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/8.1.7; export ORACLE_HOME ORACLE_SID=PROD0; export ORACLE_SID
JAVA_HOME=/usr/local/java; export JAVA_HOME
PATH=$PATH:$ORACLE_HOME/bin:$JAVA_HOME/bin:$ORACLE_HOME/JRE/bin; export PATH CLASS_PATH=.:$ORACLE_HOME/jdbc/lib/classes111.zip; export CLASS_PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/local/lib; export LD_LIBRARY_PATH ORA_NLS33=$ORACLE_HOME/ocommon/nls/admin/data; export ORA_NLS33
NLS_LANG=french_france.WE8DEC; export NLS_LANG DISPLAY=192.168.2.4:0.0;export DISPLAY
Il faudra penser ici à adapter le DISPLAY à l’IP de la machine unset LANGest important sinon l’installeur OUI ne se lancera pas.
Pour la désignation des paramètres ORACLE_???, il faut consulter
5.7 Groupes supplémentaires pour oracle et arborescence /u01
On effectuegroupadd oinstall groupadd dba groupadd oper
usermod -g oinstall -G dba,oper oracle mkdir -p /u01/app/oracle/product/8.1.7 chown -R oracle.dba /u01
chmod -R 775 /u01
On vérife les groupes auxquels oracle est rattaché bremko:/usr/local# id oracle
uid=1000(oracle) gid=1001(oinstall) groups=1001(oinstall),1002(dba),1003(oper)
6 Installation d’Oracle en mode "Custom" (OUI)
On va télécharger le tar puis procéder à l’installation.
6.1 Récupération du tar contenant l’installeur OUI
Le fichier en question est linux81701.tar que l’on peut facilement récupérer grâce à Google.On peut par exemple le récupérer depuisftp://ftp1.freebsd.org/tmp/hold/linux81701.tar. Puis depuis le terminal de chroot,
su - oracle cd
tar xvf linux81701.tar chmod 755 -R Disk1/
Ouvrir un second terminal (normal) et effectuer xhost +192.168.2.4
Figure 2: utilisation de xhost
6.2 Lancement d’OUI
On lancement maintenant l’installeur cd ~/Disk./runInstaller Ce qui affichera
Figure 3: Fenêtre de "bienvenue" de l’installeur
Figure 4: Emplacement de l’ORACLE_HOME
Figure 5: Groupe Linux réservé aux administrateurs Oracle
Figure 6: Script nécessaire à l’Installeur
Pour la suite, il faut ouvrir un terminal dans lequel il faut chrooter en tant que root et exécuter le script attendu. Ce qui donnera
Figure 7: Lancement du script orainstRoot.sh Il suffit de cliquer sur "Retry"
Figure 8: Choix du produit à installer.
Figure 9: Type d’installation: Installation personnalisée (Custom )
Figure 10: Liste des produits et choix du langage
On choisit de prendre la langue française pour l’installation des produits. (clic sur"ProductLangages")
Figure 11: Langue choisie pour les produits à installer (français)
Figure 12: Emplacement d’installation pour JRE
Figure 13: Groupe et privilèges pour OSDBA/OSOPER
Figure 14: Oracle Advanced Security: méthodes d’authentification possibles (facultatif)
Figure 15: Emplacement de la JDK
Figure 16: Création d’une base de données: Non
On choisit de ne pas créer de base...Les divers binaires nécessaires pour une création de base ne seronts pas encore utilisables sans avoir été au préalable patchés et recompilés.
Figure 17: Récapitulatif des choix effectués avant installation
L’installation débute. La barre de défilement s’éxécute en deux fois. La première concernce les copies et la seconde les links...
Figure 18: Installation des produits.
L’installation d’Oracle 8i se déroule. Des répertoires sont créés, les fichiers sont copiés et les programmes executables d’Oracle sont "linkés" pour que soient prises en compte les librairies système présente sur notre Linux. Cette étape dure quelques minutes.
Oracle effectue un "link" au lieu d’une compilation complète, car c’est un produit commercial dont les sources ne sont jamais fournies...
Figure 19: Script pour les droits sur les executables d’Oracle
Le script mentionné ici sert surtout à définir les droits Set UID pour les executables Oracle. Celà permet à n’importe programme lancé par un utilisateur "X" d’apparaître comme ayant été lancé par l’utilisateur "oracle" et non "X"
Warning
ATTENTION: DES MODIFICATIONS SONT A APPORTER. NE PAS CLIQUER SUR OK AVANT DE LES AVOIR VALIDER !!!
Depuis un terminal chrooté en tant que root: faire un vi survi/u01/app/oracle/product/8.1.7/root.sh
• remplacer RM=/bin/rm -f par
RM="/bin/rm -f"
• remplacer la ligne
RUID=‘/usr/bin/id|$AWK -F\( ’{print $2}’|$AWK -F\) ’{print $1}‘
par
RUID=‘/usr/bin/id|$AWK -F\( ’{print $2}’|$AWK -F\) ’{print $1}’‘
Dans un terminal chrooté en tant que oracle:
• pour le fichier/u01/app/oracle/product/8.1.7/bin/netasst, ajouter dans l’avant dernière ligne
$JRE -classpath $CLASSPATH oracle.net.asst.container.NetApplication oracle.net.asst. ←- container.NetApplication....
le terme "-nojit" après $JRE pour obtenir
$JRE --nojit classpath $CLASSPATH oracle.net.asst.container.NetApplication oracle.net.asst ←- .container.NetApplication
Ceci évitera une éventuelle montée en charge pour le CPU lors de l’appel de netasst
• On en profite aussi pour lancer un patch comme sur la figure suivante. Il s’avère util pour Net8 Assitant (qui a besoin de trouver libnldapj8.so)
Figure 20: Lancement (en tant que root) du patch util à Net8 Assistant Configuration
Il est maintenant possible d’exécuter le script en question.
Figure 21: Lancement du script $ORACLE_HOME/root.sh pour l’obtention des droits suffisants sur les executables d’Oracle.
On peut maintenant cliquer sur "Retry". Ce qui ouvrira la fenêtre suivante.
Figure 22: Net8 Configuration Assitant
On en profitera pour cocher "Perform typical configuration" puis on appuiera sur "Cancel" ( !!! NE PAS APPUYER SUR
"Next"!!!)
Cette manipulation invalidera la configuration Net8. Celà est sans incidence pour la suite tant qu’aucune base de données n’a été créée. L’installation se poursuit sur la mise en place du serveur Apache. Nous obtiendrons la fenêtre suivante par la suite:
Figure 23: Fin de l’installation
On ne cliquera pas sur "Configuration Tools" mais sur "Next Install" puis sur Exit et on confirme donc la fin de l’installation
Figure 24: Confirmation de la fin de l’installation.
6.3 Application du patch
Il suffit de se conformer à ce qui suit en étant dans un terminal chrooté en tant qu’oracle oracle@bremko:/u01/app/oracle/product/8.1.7$ cd $ORACLE_HOME
oracle@bremko:/u01/app/oracle/product/8.1.7$ wget -q http://www.pawprint.net/linux/glibc ←- -2.1.3-stubs.tar.gz
oracle@bremko:/u01/app/oracle/product/8.1.7$ tar xzf glibc-2.1.3-stubs.tar.gz oracle@bremko:/u01/app/oracle/product/8.1.7$ ./setup_stubs.sh
Setting up patch files...done.
Patching makefiles as necessary:
checking file ’/u01/app/oracle/product/8.1.7/rdbms/demo/demo_rdbms.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/rdbms/demo/ociucb.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/rdbms/lib/ins_rdbms.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/rdbms/lib/env_rdbms.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/ins_net_client.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/env_network.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/ins_cman.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/ins_names.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/ins_oemagent.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/env_oemagent.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/ins_net_server.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/ins_nau.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/plsql/lib/env_plsql.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/plsql/lib/ins_plsql.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/plsql/demo/demo_plsql.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/precomp/lib/ins_precomp.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/precomp/lib/env_precomp.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/ldap/lib/env_ldap.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/ldap/lib/ins_ldap.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/ldap/demo/demo_ldap.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/sqlplus/lib/env_sqlplus.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/sqlplus/lib/ins_sqlplus.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/ord/im/lib/env_ordim.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/ord/img/demo/demo_ordimg.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/ord/ts/demo/oci/src/demo_ordts.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/ord/ts/demo/proc/src/demo_ordts.mk’... ←- patched.
checking file ’/u01/app/oracle/product/8.1.7/ord/ts/lib/env_ordts.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/md/demo/examples/demo_sdo.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/md/demo/unix/motif/src/demo_motif.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/md/demo/unix/motif/src/db_src/demo_dbsrc.mk ←-
’...OK.
checking file ’/u01/app/oracle/product/8.1.7/md/demo/unix/motif/src/main_src/demo_mainsrc ←- .mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/otrace/demo/atmoci.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/otrace/lib/env_otrace.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/otrace/lib/ins_otrace.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/ctx/lib/env_ctx.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/ctx/lib/ins_ctx.mk’...OK.
Rebuilding client shared library...done.
Relinking executables:
running ’ins_rdbms.mk’...done.
running ’ins_net_client.mk’...done.
running ’ins_cman.mk’...done.
running ’ins_names.mk’...done.
running ’ins_oemagent.mk’...done.
running ’ins_net_server.mk’...done.
running ’ins_nau.mk’...done.
running ’ins_plsql.mk’...done.
running ’ins_precomp.mk’...done.
running ’ins_ldap.mk’...done.
running ’ins_sqlplus.mk’...done.
running ’ins_otrace.mk’...done.
running ’ins_ctx.mk’...done.
6.4 Confirmation du lancement du listener par défaut (message contextuel en français)
L’exécution delsnrctlstatusconfirme l’installation selon la langue choisieoracle@bremko:/u01/app/oracle/product/8.1.7$ lsnrctl status
LSNRCTL for Linux: Version 8.1.7.0.0 - Production on 14-OCT-2009 00:00:28 (c) Copyright 1998 Oracle Corporation. All rights reserved.
Connexion � (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC))) STATUT du LISTENER
---
Alias LISTENER
Version TNSLSNR for Linux: Version 8.1.7.0.0 - Production
Date de départ 13-OCT-2009 23:05:12
Durée d’activité 0 jours 0 heures 55 min. 16 sec Niveau de trace off
Sécurité OFF
SNMP OFF
Fichier de param�tres du listener /u01/app/oracle/product/8.1.7/network/admin/ ←- listener.ora
Fichier journal listener /u01/app/oracle/product/8.1.7/network/log/listener.log Récapitulatif services...
PLSExtProc \ 1 gestionnaires de services La commande a réussi
7 Migration de Oracle 8.1.7.0 vers Oracle 8.1.7.4.0
Dans les années qui ont suivi le développement d’Oracle 8i, un certain nombres de patchs ont été fournis pour corriger des bugs.
Ici nous proposons d’appliquer lepatch, nécessaire.
Ce patch est connu (surtout à l’époque) pour corriger de nombreux bugs notamment au niveau du support pour InterMedia...
7.1 Où se le procurer?
C’est le fichier "p2376472_8174_LINUX.zip" qu’il faut pouvoir récupérer. Malheureusement, il est indisponible sur les sites offi-
cieles d’Oracle. En date du 2009/11/10, il faut se rendre àhttp://www.filewatcher.com/m/p2376472_8174_LINUX.zip.134488241.0.0.html , il faut choisir le second lien, ou plus simplement
cd /mnt/toto/woody-chroot/home/oracle
wget ftp://ftp.scn.ru/pub/soft/unix/p2376472_8174_LINUX.zip
Maintenant on chroot sur /mnt/toto/woody-chroot/ et on change de propriétaire pour le fichier zippé chroot /mnt/toto/woody-chroot/
chown oracle ~oracle/p2376472_8174_LINUX.zip
7.2 Installation
Si en cours de route, vous avez installé des instances d’Oracle, il faut commencer par les arrêt avant de continuer.
Toujours dans le terminal de chroot, on devient oracle et on décompresse ce fichier oracle@bremko:~$ unzip p2376472_8174_LINUX.zip
Archive: p2376472_8174_LINUX.zip inflating: README.html
inflating: lnx32_8174_patchset.tar
oracle@bremko:~$tar xvf lnx32_8174_patchset.tar
Ce qui produira le répertoire stage à savoir/home/oracle/stage- répertoire utilisé pour la suite dans l’installeur - Dans un terminal normal,on effectue les autorisations nécessaires pour avoir l’affichage. Dans la suiten, il faut remplacer IP_qui_convient par l’IP de la machine sur laquelle tourne le serveur X.
xhost +IP_qui_convient
Dans le terminal chrooté d’oracle, on modifie la valeur de DISPLAY et on lance l’installeur export DISPLAY=IP_qui_convient:0.0
cd /home/oracle/Disk1/install/linux ./runInstaller
Initializing Java Virtual Machine from ../stage/Components/oracle.swd.jre/1.1.8/1/DataFiles ←- /Expanded/linux/bin/jre. Please wait...
L’installeur se lance. On clique sur ’Next’... C’est la valeur de Source qu’il faut modifier pour que l’installeur pointe vers le bon fichier
Figure 25: Vérification pour la variable source
Figure 26: Récapitulatif d’installation pour le patch pour 8.1.7.4.0
Figure 27: Installation en cours
Figure 28: Linkage en cours
Figure 29: Fin de l’installation
7.3 Application du patch de linkage
D’après mes investigations sur Internet, je ne peux pas vraiment confirmer si cette étape s’avère vraiment nécessaire vu que certaines sources estiment que non. Mais bon dans le doute, je l’ai appliqué et je n’ai eu aucun problème par la suite.
Il va donc s’agir d’appliquer le patch de link que nous avons déjà utilisé auparavant oracle@bremko:~/Disk1/install/linux$ cd $ORACLE_HOME
oracle@bremko:/u01/app/oracle/product/8.1.7$ ./setup_stubs.sh Setting up patch files...done.
Patching makefiles as necessary:
checking file ’/u01/app/oracle/product/8.1.7/rdbms/demo/demo_rdbms.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/rdbms/demo/ociucb.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/rdbms/lib/ins_rdbms.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/rdbms/lib/env_rdbms.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/ins_net_client.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/env_network.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/ins_cman.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/ins_names.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/ins_oemagent.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/env_oemagent.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/ins_net_server.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/network/lib/ins_nau.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/plsql/lib/env_plsql.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/plsql/lib/ins_plsql.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/plsql/demo/demo_plsql.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/precomp/lib/ins_precomp.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/precomp/lib/env_precomp.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/ldap/lib/env_ldap.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/ldap/lib/ins_ldap.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/ldap/demo/demo_ldap.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/sqlplus/lib/env_sqlplus.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/sqlplus/lib/ins_sqlplus.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/ord/im/lib/env_ordim.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/ord/img/demo/demo_ordimg.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/ord/ts/demo/oci/src/demo_ordts.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/ord/ts/demo/proc/src/demo_ordts.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/ord/ts/lib/env_ordts.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/md/demo/examples/demo_sdo.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/md/demo/unix/motif/src/demo_motif.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/md/demo/unix/motif/src/db_src/demo_dbsrc.mk ←-
’...OK.
checking file ’/u01/app/oracle/product/8.1.7/md/demo/unix/motif/src/main_src/demo_mainsrc ←- .mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/otrace/demo/atmoci.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/otrace/lib/env_otrace.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/otrace/lib/ins_otrace.mk’...OK.
checking file ’/u01/app/oracle/product/8.1.7/ctx/lib/env_ctx.mk’...patched.
checking file ’/u01/app/oracle/product/8.1.7/ctx/lib/ins_ctx.mk’...OK.
Rebuilding client shared library...done.
Relinking executables:
running ’ins_rdbms.mk’...done.
running ’ins_net_client.mk’...done.
running ’ins_cman.mk’...done.
running ’ins_names.mk’...done.
running ’ins_oemagent.mk’...done.
running ’ins_net_server.mk’...done.
running ’ins_nau.mk’...done.
running ’ins_plsql.mk’...done.
running ’ins_precomp.mk’...done.
running ’ins_ldap.mk’...done.
running ’ins_sqlplus.mk’...done.
running ’ins_otrace.mk’...done.
running ’ins_ctx.mk’...done.
8 Test pour dbassist
Maintenant que les binaires sont installés, il est tout à fait possible de créer une base de données en ayant recours àdbassist depuis le poste distant en s’assurant d’avoir chrooté comme convenu.
Figure 30: Lancement initial de dbassist
Lors du premier lancement comme aucune base de données n’a pour le moment été créée, seulle l’option "Create a database" est disponible
Figure 31: Type de configuration possible
Ce document ne couvrant pas le création de base de données, merci de vous tourner vers d’autres documentations pour la suite www.oracle.com, Internet, les urls fournies dans la section 2 etc..
9 Rendre Oracle indépendant du chroot
Par la suite, il devient possible d’utilser l’arborescence /u01/app/oracle indépendamment du chroot sous Woody.
• Il faut d’abord s’assurer que tous les processus en background ne soit pas actifs (SMON, PMON ....) ps au|grep ora_
ne doit rien renvoyer. Sinon il suffira de les arrêter
• On déplace tout simplement l’arborescence vers / mv /mnt/toto/woody-chroot/u01/ /
• Il faudra récréer l’utilisateur Oracle avec les divers groupes associés adduser oracle
groupadd oinstall groupadd dba groupadd oper
usermod -g oinstall -G dba,oper oracle
chown -R oracle.dba /u01 chmod -R 775 /u01
On pensera aussi à mettre à jour le .bash_profile de l’utilisateur Oracle (voir section 5.6 Compte Oracle) Pour la création de base à partir de scripts, il est possible d’en trouver grâce à Google.
10 F.A.Q
10.1 Où trouver les sources pour les versions comme Oracle 8i pour Windows, Oracle 9 sous Linux, Oracle 10?
Il faut se rendre àhttp://ftp.comp.hkbu.edu.hk/pub/oracle/