
                             Oracle Database HOWTO

Paul Haigh, paul@nailed.demon.co.uk
Adaptation franaise par Stphane Lee Chip Hing, slee@ile-maurice.com

   v1.2, 04 aot 1998
     _________________________________________________________________

   _Un guide pour installer et configurer le Serveur de Base de Donnes
   Oracle sur un systme Linux._
     _________________________________________________________________

1. Introduction

1.1 Historique des Versions

     * v0.1 - 21 fv. 1998 - Paul Haigh - Version Originale
     * v0.2 - 01 mars 1998 - Paul Haigh - Adjonction des Commentaires des
       Relecteurs
     * v1.0 - 10 mars 1998 - Paul Haigh - Publi sous LDP
     * v1.1 - 20 juin 1998 - Paul Haigh - Section Dpannage ajoute et
       rangement gnral
     * v1.2 - 04 aot 1998 - Paul Haigh - Nouvelles d'Oracle Corp ajoute
       et section sur les Amloirations Futures supprime.

1.2 Copyright

   Le HOWTO Oracle Database est copyright (c) 1998, Paul Haigh.

   Comme tous les documents HOWTO Linux, celui-ci peut tre reproduit et
   distribu en entier ou en extrait, sur n'importe quel support,
   physique ou lectronique, tant que ce copyright est maintenu sur
   toutes les copies.

   La redistribution commerciale est autorise et encourage. Cependant,
   l'auteur aimerait tre avis de telles distributions. Vous pouvez
   traduire ce HOWTO dans n'importe quelle langue tant que vous incluez
   une notice prcisant celui ou celle qui a traduit ce document.

1.3 Mise en garde

   Bien que j'ai essay d'inclure les informations les plus correctes et
   les plus rcentes a ma disposition, je ne peux garantir que leur
   utilisation ne va pas occasionner des pertes de donnes ou de
   matriel. Je ne fournis AUCUNE GARANTIE sur les informations dans ce
   HOWTO et je ne suis responsable d'aucune consquence rsultant de
   l'utilisation des informations de ce document.

1.4 But de ce HOWTO

   Dans ce HOWTO, je vais essayer de couvrir l'installation et
   l'administration basique d'une base de donnes Oracle tournant sur une
   machine Linux. Je vais couvrir particulirement l'installation du
   serveur Oracle, la configuration de SQL*Net et du client.

   Ce document n'est pas un tutoriel complet sur l'utilisation et
   l'administration d'une base de donnes Oracle. Si c'est cela que vous
   recherchez, il y a de bons livres sur ces sujets publis par O'Reilly
   et autres.

   Je ne vais pas non plus couvrir le dveloppement des programmes Oracle
   sous UNIX. Si cela vous est absolument ncessaire, je vous
   recommanderais d'acheter le systme de dveloppement de SCO (avec
   OpenServer 5.x) , dont on m'a dit qu'il pouvait tre obtenu pour un
   prix trs raisonnable US $19,  SCO

1.5 Pr-Requis

   Je suppose acquises un certain nombre de notions pour comprendre la
   suite du HOWTO.
     * _Le CD Serveur Oracle pour SCO OpenServer (Version 7.3.3.0.0.)_

                Ceci _doit_ tre une copie lgale. N'oubliez pas
                qu'Oracle est une socit commerciale et vend ses
                produits. Si vous voulez une base de donnes compatible
                SQL gratuite, utilisez PostgreSQL ou quelque chose de
                similaire.

                Il est aussi possible d'installer Oracle, avec une
                licence d'valuation de 60 jours,  partir d'un fichier
                tar tlchargeable sur le site web d'Oracle. Je ne l'ai
                pas personnellement essay et ce n'est pas vrifi.

     * _Un Serveur Linux_

                Vous n'auriez pas lu ceci sans un... N'est-ce pas?

     * _Noyau 2.0.30+_

                Je ne peux garantir que les instructions seront fiables
                pour les autres noyaux. (ni pour le 2.0.30,
                d'ailleurs...)

     * _iBCS_

                Il est trs important que ceci soit install et tourne
                avec la version la plus rcente possible pour votre
                plate-forme. (J'utilise iBCS-2.0-10.i386.rpm de RedHat
                Linux).

     * _Beaucoup d'espace disque_

                600 Mb+ est une quantit raisonnable. Il est possible
                d'installer avec moins de place mais vous devez faire des
                sacrifices, et je ne commence jamais avec a. Nanmoins,
                je vais essayer de souligner les endroits o l'on peut
                librer de l'espace.

     * _32Mb+ Ram_

                Je sais que ceci peut sembler important, surtout en ce
                qui concerne Linux, mais n'oubliez pas que Oracle est un
                logiciel complexe. Vous n'auriez pas ces rserves sur
                SCO!

                Je ne dis pas que Oracle ne marchera pas avec moins, mais
                que c'est le minimum recommand par Oracle, ce que je
                n'aurais pas conseill.

     * _Licences de Oracle_

                Je sais que je l'ai deja mentionn ceci mais je voudrais
                tre clair sur son importance. Utilisez les logiciels
                d'Oracle sans licence est illgal.

1.6 Nouvelles d'Oracle Corporation

   Oracle a cd sous la pression de la communaut Linux. Oracle
   Corporation a dcid de supporter _officiellement_ Oracle 8 sur la
   plate-forme Linux (i386). Elle doit tre lanc en dcembre 1998, selon
   le site web d'Oracle.

   Mieux encore, Oracle va aussi porter Oracle Applications sur Linux. Il
   doit tre disponible dans le premier semestre 1999, selon le site web
   d'Oracle.

   Rfrences:
     * http://www.oracle.com/html/linux.html
     * http://www.news.com/News/Item/0,4,24436,00.html
     * http://www.zdnet.com/pcweek/news/0720/20morac.html

2. Installation du logiciel Oracle

2.1 Prparation du Serveur

  Cration d'un Utilisateur Oracle

   Nous avons videmment besoin d'un utilisateur pour maintenir la base
   de donnes Oracle. Comme nous n'avons l'intention de relier le noyau
   Oracle (plus sur ceci plus tard), nous devons accepter les noms
   d'utilisateur et de groupe par dfaut d'Oracle. Il inclut
   l'utilisateur ORACLE et le groupe DBA.

    1. Se connecter comme root
    2. Crer l'utilisateur oracle et le groupe dba.
       ______________________________________________________________

$ groupadd dba
$ useradd  oracle
       ______________________________________________________________

    3. S'assurer que le rpertoire personnel est cr pour l'utilisateur
       oracle.
       ______________________________________________________________

$ mkdir /home/oracle
$ mkdir /home/oracle/7.3.3.0.0 (Version of Oracle)
$ chown -R oracle.dba /home/oracle
       ______________________________________________________________

2.2 Installation depuis le CDROM

   Malheureusement, l'Installateur Oracle sur le CD SCO ne marchera pas.
   Beaucoup de problmes peut tre rencontrs, des core dumps aux
   blocages. On doit donc copier les fichiers du CDROM manuellement et
   les dcompresser:

   (S'assurer que le CDROM est mont sur le systme).
    1. Se connecter comme utilisateur Oracle
    2. Changer de rpertoire pour /home/oracle/7.3.3.0.0.
    3. Copier les fichiers d'installation du CDROM
       ______________________________________________________________

$ cp -a /mnt/cdrom/* .
       ______________________________________________________________

    4. Dcompresser les fichiers Oracle du CDROM.
       ______________________________________________________________

$ find . -name *_ -exec ~/7.3.3.0.0/orainst/oiuncomp {} \;
       ______________________________________________________________

2.3 Tches de Post Installation

  Tches pour Root

   Ajouter les lignes suivantes dans /etc/profile ou dans .profile pour
   chaque utilisateur d'Oracle.
       ______________________________________________________________

# Oracle Specific
ORACLE_HOME=/home/oracle/7.3.3.0.0
ORACLE_SID=orcl
ORACLE_TERM=vt100
export ORACLE_HOME ORACLE_SID ORACLE_TERM

# Changer le chemin pour Oracle
PATH="$PATH:$ORACLE_HOME/bin"
       ______________________________________________________________

   Nous devons aussi changer le propritaire et les permissions de
   l'utilitaire Oracle d'augmentation de ulimit.
       ______________________________________________________________

$ chown root.root $ORACLE_HOME/bin/osh
$ chmod u+s $ORACLE_HOME/bin/osh
       ______________________________________________________________

  Tches pour Oracle

   Changer les permissions pour les fichiers Oracle pour s'assurer de
   leur bonne excution.
       ______________________________________________________________

$ chmod +x $ORACLE_HOME/bin/*
$ chmod u+s $ORACLE_HOME/bin/oracle
       ______________________________________________________________

   Les outils Oracle demandent que les messages soient dans le rpertoire
   $ORACLE_HOME/tool_name/mesg. Donc, dplacez les fichiers msb des
   rpertoires msg_ship aux rpertoires mesg.
       ______________________________________________________________

$ mv $ORACLE_HOME/plsql/mesg/mesg_ship/* $ORACLE_HOME/plsql/mesg/.
$ mv $ORACLE_HOME/rdbms/mesg/mesg_ship/* $ORACLE_HOME/rdbms/mesg/.
$ mv $ORACLE_HOME/svrmgr/mesg/mesg_ship/* $ORACLE_HOME/svrmgr/mesg/.
       ______________________________________________________________

   Crer les rpertoires suivants, s'ils n'existent pas:
       ______________________________________________________________

$ mkdir $ORACLE_HOME/rdbms/log
$ mkdir $ORACLE_HOME/rdbms/audit
$ mkdir $ORACLE_HOME/network/log
       ______________________________________________________________

  Ceux que vous pouvez enlever

   Les rpertoires suivants peuvent tre enlevs sans problme:
     * $ORACLE_HOME/guicommon2/
     * $ORACLE_HOME/ctx/
     * $ORACLE_HOME/md/
     * $ORACLE_HOME/mlx/
     * $RACLE_HOME/precomp/
     * $ORACLE_HOME/slax/

3. Cration d'une base de donnes

   Maintenant que le serveur Oracle est install, nous devons crer une
   base de donnes pour tester l'installation. Si vous utilisez Oracle
   7.2.x ou une version anterieure, veuillez lire la section Dpannage
   ci-dessous.

3.1 Crer le fichier d'Initialisation

   Copiez $ORACLE_HOME/dbs/init.ora vers $ORACLE_HOME/dbs/initorcl.ora:
       ______________________________________________________________

$ cd $ORACLE_HOME/dbs
$ cp init.ora initorcl.ora
       ______________________________________________________________

   Le modifier en ajoutant les lignes suivantes:
       ______________________________________________________________

db_name = orcl
COMPATIBLE=7.3.3.0.0
       ______________________________________________________________

3.2 Cration du script pour l'installation de la base de donnes

   Crer un fichier script nomm makedb.sql dans le rpertoire
   $ORACLE_HOME/dbs:
       ______________________________________________________________

connect internal
startup nomount
set echo on
spool makedb.log
create database orcl
        maxinstances 1
        maxlogfiles  8
        datafile '$ORACLE_HOME/dbs/orcl_syst_01.dbf' size 40M reuse
        logfile
                '$ORACLE_HOME/dbs/orcl_redo_01.dbf' size 1M reuse,
                '$ORACLE_HOME/dbs/orcl_redo_02.dbf' size 1M reuse,
                '$ORACLE_HOME/dbs/orcl_redo_03.dbf' size 1M reuse;
@$ORACLE_HOME/rdbms/admin/catalog.sql
create tablespace rollback
        datafile '$ORACLE_HOME/dbs/orcl_roll_01.dbf' size 8.5M reuse;
create tablespace temp
        datafile '$ORACLE_HOME/dbs/orcl_temp_01.dbf' size 5M reuse
        temporary;
create tablespace users
        datafile '$ORACLE_HOME/dbs/orcl_user_01.dbf' size 10M reuse;
create rollback segment r1 tablespace rollback
        storage ( optimal 5M );
alter rollback segment r1 online;
connect system/manager
@$ORACLE_HOME/rdbms/admin/catdbsyn.sql
connect internal
@$ORACLE_HOME/rdbms/admin/catproc.sql
connect system/manager
@$ORACLE_HOME/sqlplus/admin/pupbld.sql
spool off
exit
       ______________________________________________________________

3.3 Excuter le script pour l'installation de la base de donnes

   Dmarrer svrmgrl et excuter le script:
       ______________________________________________________________

$ cd $ORACLE_HOME/dbs
$ svrmgrl

Oracle Server Manager Release 2.3.3.0.0 - Production

Copyright (c) Oracle Corporation 1994, 1995. All rights reserved.

Oracle7 Server Release 7.3.3.0.0 - Production Release
PL/SQL Release 2.3.3.0.0 - Production

SVRMGR> connect internal
Connected.
SVRMGR> startup nomount
ORACLE instance started.
Total System Global Area       4313312 bytes
Fixed Size                       41876 bytes
Variable Size                  4140364 bytes
Database Buffers                122880 bytes
Redo Buffers                      8192 bytes
SVRMGR> @makedb
<beaucoup de messages>
SVRMGR> exit
Server Manager complete.
       ______________________________________________________________

3.4 Dmarrer la base de donnes

   Premirement, nous devons lancer la base de donnes manuellement (nous
   l'automatiserons plus tard). Pour dmarrer une base de donnes Oracle,
   nous devons mettre la commande startup en tant connect localement:
       ______________________________________________________________

$ svrmgrl

Oracle Server Manager Release 2.3.3.0.0 - Production

Copyright (c) Oracle Corporation 1994, 1995. All rights reserved.

Oracle7 Server Release 7.3.3.0.0 - Production Release
PL/SQL Release 2.3.3.0.0 - Production

SVRMGR> connect internal
Connected.
SVRMGR> startup
ORACLE instance started.
Total System Global Area       4313316 bytes
Fixed Size                       41876 bytes
Variable Size                  4140368 bytes
Database Buffers                122880 bytes
Redo Buffers                      8192 bytes
Database mounted.
Database opened.
SVRMGR> exit
Server Manager complete.
       ______________________________________________________________

3.5 Arrter la base de donnes

   Il est important de mentionner ici que redmarrer un serveur Linux
   sans fermer auparavant la base de donnes Oracle risque fort de
   corrompre la base de donnes.

   Donc, avant d'mettre la commande Linux shutdown, il est sage de
   fermer le base de donnes:
       ______________________________________________________________

$ svrmgrl

Oracle Server Manager Release 2.3.3.0.0 - Production

Copyright (c) Oracle Corporation 1994, 1995. All rights reserved.

Oracle7 Server Release 7.3.3.0.0 - Production Release
PL/SQL Release 2.3.3.0.0 - Production

SVRMGR> connect internal
Connected.
SVRMGR> shutdown
Database closed.
Database dismounted.
ORACLE instance shut down.
SVRMGR> exit
Server Manager complete.
       ______________________________________________________________

3.6 Crer un Utilisateur par dfaut

   La base de donnes, telle qu'elle a t cre, a deux utilisateurs
   spciaux qui sont crs automatiquement. Ce sont;
       ______________________________________________________________

Username                Password

SYSTEM                  MANAGER
SYS                     change_on_install
       ______________________________________________________________

   Ces utilisateurs sont typiquement utiliss pour maintenir les
   informations sur le dictionnaire standard de donnes pour la base de
   donnes. C'est une bonne ide de changer les mots de passe par dfaut
   aussitt que possible.

   Ceci peut tre fait par:
       ______________________________________________________________

sqlplus system/manager

SQL*Plus: Release 3.3.3.0.0 - Production on Sat Feb 21 12:43:33 1998

Copyright (c) Oracle Corporation 1979, 1996.  All rights reserved.


Connected to:
Oracle7 Server Release 7.3.3.0.0 - Production Release

SQL> alter user system identified by <newpassword>;

User altered.

SQL> alter user sys identified by <newpassword>;

User altered.

SQL> exit;
Disconnected from Oracle7 Server Release 7.3.3.0.0 - Production Release
PL/SQL Release 2.3.3.0.0 - Production
       ______________________________________________________________

   Comme l'utilisateur system/manager est similaire  l'utilisateur root
   sur une machine UNIX, nous devons crer un utilisateur avec moins de
   pouvoir  causer des dgats possibles (rappelez-vous de lancer la base
   de donnes avant d'essayer de crer un utilisateur).

   Se connecter  SQL*Plus et crer un utilisateur:
       ______________________________________________________________

$ sqlplus system/manager

SQL*Plus: Release 3.3.3.0.0 - Production on Sat Feb 21 12:43:33 1998

Copyright (c) Oracle Corporation 1979, 1996.  All rights reserved.


Connected to:
Oracle7 Server Release 7.3.3.0.0 - Production Release
PL/SQL Release 2.3.3.0.0 - Production

SQL> create user <user> identified by <psw>
  2  default tablespace users
  3  temporary tablespace temp;

User created.

SQL> grant connect, resource to <user>

Grant succeeded.

SQL> exit
Disconnected from Oracle7 Server Release 7.3.3.0.0 - Production Release
PL/SQL Release 2.3.3.0.0 - Production
       ______________________________________________________________

   Maintenant que vous avez un nouvel utilisateur sur le systme, vous
   pouvez jouer avec. Pour se connecter sur la base de donnes Oracle:
       ______________________________________________________________

$ sqlplus <user>/<password>
       ______________________________________________________________

   Si ceci s'excute sans messages d'erreur, vous avez donc une base de
   donnes Oracle qui marche. Si vous ne voulez vous connecter qu'
   partir de ce serveur, votre travail est donc termin. Amusez-vous!

   Si, cependant, comme la plupart des gens, vous voulez configurer la
   partie rseau du logiciel pour que vous puissiez vous connecter depuis
   d'autres machine, continuez votre lecture.

4. Configurer SQL*Net sur le Serveur

   Tous ces fichiers configurent la partie rseau d'Oracle (SQL*Net ou
   Net8 pour Oracle8). Ces fichiers doivent tre crs sur le serveur
   dans le rpertoire $ORACLE_HOME/network/admin.

4.1 tnsnames.ora

   Le fichier TNSNAMES.ORA identifie les services disponibles depuis la
   machine. Dans notre cas, nous dcrirons toutes les bases de donnes
   que le serveur a mont. Pour chaque base de donnes sur votre serveur,
   ajouter une section comme ci-dessous:
       ______________________________________________________________

orcl.world =
  (DESCRIPTION =
    (ADDRESS_LIST =
        (ADDRESS =
          (COMMUNITY = tcp.world)
          (PROTOCOL = TCP)
          (Host = <INSERER LE NOM LOGIQUE DU SERVEUR ICI> )
          (Port = 1521)
        )
        (ADDRESS =
          (COMMUNITY = tcp.world)
          (PROTOCOL = TCP)
          (Host = <INSERER LE NOM LOGIQUE DU SERVEUR ICI> )
          (Port = 1526)
        )
    )
    (CONNECT_DATA = (SID = ORCL)
    )
  )
       ______________________________________________________________

4.2 listener.ora

   Le fichier listener.ora contient la description des services auxquels
   d'autres machines sont autorises  se connecter et toutes les
   configurations ncessaires pour l'couteur du serveur.

   Il contient les sections pour le nom de l'couteur, son adresse, les
   bases de donnes desservies par l'couteur et les paramtres de
   configuration.

   Voici un exemple:
       ______________________________________________________________

# Nom de l'couteur et les adresses a couter
LISTENER =
        ( ADDRESS_LIST =
                (ADDRESS =
                        (PROTOCOL=tcp)
                        (HOST=<INSERT HOST>)
                        (PORT=1521)
                        (COMMUNITY=UK_SUP_TCPIP)
                )
                (ADDRESS =
                        (PROTOCOL=ipc)
                        (KEY=700)
                        (COMMUNITY=UK_SUP_TCPIP)
                )
        )

# Liste des services dsservis par l'couteur
SID_LIST_LISTENER=
        (SID_LIST=
                (SID_DESC=
                        (SID_NAME=orcl)
                        (ORACLE_HOME=/home/oracle/7.3.3.0.0)
                )
        )

# Dbut des paramtres de configuration
TRACE_LEVEL_LISTENER=OFF
TRACE_FILE_LISTENER = "listener"
LOG_FILE_LISTENER = "listener"
CONNECT_TIMEOUT_LISTENER = 10
STOP_LISTENER = YES
DBA_GROUP = dba
       ______________________________________________________________

4.3 sqlnet.ora

   Le fichier sqlnet.ora contient la configuration pour le noeud du
   rseau. Ceci est indpendant du nombre de bases de donnes ou du
   nombre d'couteurs. La chose la plus importante dans ce fichier est la
   variable de configuration Timeout des Connexions Mortes.

   Le timeout des connexions mortes vrifie chaque processus entrant  la
   base de donnes et assure que le ct client rpond toujours. Si le
   client (de tout type) ne rpond pas, le processus en tche de fond du
   serveur Oracle sera tu.

   Ceci est trs utile si vous avez plusieurs clients qui accdent  la
   base de donnes, surtout pendant la phase de dveloppement o ces
   clients ne russiront certainement pas  sortir proprement de la base
   de donnes Oracle.

   Voici une copie de mon fichier sqlnet.ora pour vous servir d'exemple:
       ______________________________________________________________

TRACE_LEVEL_CLIENT = OFF
sqlnet.expire_time = 30         # le nombre de secondes entre les vrifications
 des clients.
names.default_domain = world
name.default_zone = world
       ______________________________________________________________

4.4 Lancer et Arrter les Ecouteurs.

   Maintenant que la configuration des couteurs et de SQL*Net est finie,
   nous pouvons essayer de connecter la base de donnes en utilisant la
   partie rseau. (Avant nous utilisions l'accs direct  la base de
   donnes, alors qu'ici nous simulons une connexion depuis une machine
   cliente distante).

   Pour lancer l'couteur en utilisant la configuration ci-dessus:
       ______________________________________________________________

$ lsnrctl

LSNRCTL for SCO System V/386: Version 2.3.3.0.0 - Production on 23-FEB-98 20:38
:25

Copyright (c) Oracle Corporation 1994.  All rights reserved.

Welcome to LSNRCTL, type "help" for information.

LSNRCTL> start
Starting /home/oracle/7.3.3.0.0/bin/tnslsnr: please wait...

TNSLSNR for SCO System V/386: Version 2.3.3.0.0 - Production
System parameter file is /home/oracle/7.3.3.0.0/network/admin/listener.ora
Log messages written to /home/oracle/7.3.3.0.0/network/log/listener.log
Listening on: (ADDRESS=(PROTOCOL=tcp)(DEV=6)(HOST=192.168.1.1)(PORT=1521))
Listening on: (ADDRESS=(PROTOCOL=ipc)(DEV=10)(KEY=700))

Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=magic.com)(PORT=1521)(COMMUNITY=UK_S
UP_TCPIP))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for SCO System V/386: Version 2.3.3.0.0 - Pro
duction
Start Date                23-FEB-98 20:38:50
Uptime                    0 days 0 hr. 0 min. 0 sec
Trace Level               off
Security                  OFF
SNMP                      ON
Listener Parameter File   /home/oracle/7.3.3.0.0/network/admin/listener.ora
Listener Log File         /home/oracle/7.3.3.0.0/network/log/listener.log
Services Summary...
  orcl          has 1 service handler(s)
The command completed successfully
LSNRCTL> exit
       ______________________________________________________________

   Pour arrter les couteurs:
       ______________________________________________________________

$ lsnrctl

LSNRCTL for SCO System V/386: Version 2.3.3.0.0 - Production on 23-FEB-98 20:43
:20

Copyright (c) Oracle Corporation 1994.  All rights reserved.

Welcome to LSNRCTL, type "help" for information.

LSNRCTL> stop
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=magic.com)(PORT=1521)(COMMUNITY=UK_S
UP_TCPIP))
The command completed successfully
LSNRCTL> exit
       ______________________________________________________________

   Si vous avez une configuration DNS qui ne retourne pas l'adresse IP
   pour le nom logique specifi, le lancement et l'arrt de l'couteur
   prendront donc in certain temps. (2-3 mins. dpendant de la variable
   timeout du DNS). Si c'est le cas , ne vous inquitez pas. Soyez
   patient.

5. Configuration du Client

5.1 Clients Windows

   La configuration SQL*Net sur un PC avec les versions rcentes du
   logiciel Client Oracle est trs facile. La meilleure faon (et la plus
   facile) pour russir l'installation d'un client qui marche
   entirement, est d'utiliser l'outil SQL*Net Easy Configuration fourni
   par Oracle.

   Cet outil a une interface qui vous guidera dans l'installation des
   fichiers tnsnames.ora et sqlnet.ora.

   Slectionnez "Add Database Alias" et entrez le nom pour l'alias
   demand. Cet alias est le nom par lequel vous allez vous rfrer 
   l'instance de la base de donnes, et doit donc tre le mme que celui
   de l'instance (orcl dans ce cas).

   Slectionnez TCP/IP comme protocole, le nom logique de la machine
   hbergeant la base de donnes et le nom de l'instance de la base de
   donnes.

   C'est tout.

   Cependant, si vous n'avez pas l'outil SQL*Net Easy Configuration Tool,
   ne vous inquietez pas. Vous pouvez simplement crer les fichiers
   tnsnames.ora et sqlnet.ora dans le rpertoire
   $ORACLE_HOME/network/admin sur le client, exactement comme sur le
   serveur. Il fournira comme alias le mme que sur le serveur (toujours
   une bonne ide de toute faon).

5.2 Clients Unix

   Les clients UNIX ne sont pas trs diffrents des clients Windows. Si
   vous avez Network Manager d'Oracle, alors utilisez-le de la mme faon
   que ci-dessus, sinon vous pouvez utiliser juste les mmes fichiers de
   configuration que sur le serveur dans le rpertoire
   $ORACLE_HOME/network/admin.

6. Lancement et Arrt Automatique

6.1 dbstart et dbstop

   Le dmarrage et l'arrt automatique de la base de donnes Oracle
   peuvent tre effectus (avec la version 7.3.3.0.0) avec les fichiers
   dbstart et dbshut, tous deux fournis par Oracle. Ces fichiers
   dpendent sur l'existence du fichier /etc/oratab pour fonctionner
   (bien qu'en modifiant les fichiers dbshut et dbstart il puissent tre
   dplacs).

   Le format du fichier /etc/oratab est le suivant:
       ______________________________________________________________

SID:ORACLE_HOME:AUTO
       ______________________________________________________________

   Un exemple:
       ______________________________________________________________

orcl:/home/oracle/7.3.3.0.0:Y
leaveup:/home/oracle/7.3.2.1.0:N
       ______________________________________________________________

6.2 init.d et rc.d

   Pour dmarrer et arrter la base de donnes quand la machine se lance
   ou s'teint, il faut modifier les routines de dmarrage pour la
   machine Linux. Ceci est trs facile, bien que je devrais souligner que
   cela peut changer suivant la distribution Linux (Slackware, Debian,
   RedHat, etc). Je vais montrer quelques exemples qui marchent avec
   RedHat Linux 5.0. Pour modifier ceux-ci pour votre propre distribution
   Linux, veuillez voir votre documentation Linux. (bien que ceci doit
   tre valable pour n'importe quel UNIX de type Sys V)

   Premirement, nous devons crer le script qui excutera dbshut et
   dbstart dans le rpertoire /etc/rc.d/init.d . Crez le fichier suivant
   comme /etc/rc.d/init.d/oracle:
       ______________________________________________________________

#!/bin/sh
#
# /etc/rc.d/init.d/oracle
# Description: Starts and stops the Oracle database and listeners
# See how we were called.
case "$1" in
  start)
        echo -n "Starting Oracle Databases: "
        echo "----------------------------------------------------" >> /var/log
/oracle
        date +"! %T %a %D : Starting Oracle Databases as part of system up." >>
 /var/log/oracle
        echo "----------------------------------------------------" >> /var/log
/oracle
        su - oracle -c dbstart >> /var/log/oracle
        echo "Done."
        echo -n "Starting Oracle Listeners: "
        su - oracle -c "lsnrctl start" >> /var/log/oracle
        echo "Done."
        echo ""
        echo "----------------------------------------------------" >> /var/log
/oracle
        date +"! %T %a %D : Finished." >> /var/log/oracle
        echo "----------------------------------------------------" >> /var/log
/oracle
        touch /var/lock/subsys/oracle
        ;;
  stop)
        echo -n "Shutting Down Oracle Listeners: "
        echo "----------------------------------------------------" >> /var/log
/oracle
        date +"! %T %a %D : Shutting Down Oracle Databases as part of system do
wn." >> /var/log/oracle
        echo "----------------------------------------------------" >> /var/log
/oracle
        su - oracle -c "lsnrctl stop" >> /var/log/oracle
        echo "Done."
        rm -f /var/lock/subsys/oracle
        echo -n "Shutting Down Oracle Databases: "
        su - oracle -c dbshut >> /var/log/oracle
        echo "Done."
        echo ""
        echo "----------------------------------------------------" >> /var/log
/oracle
        date +"! %T %a %D : Finished." >> /var/log/oracle
        echo "----------------------------------------------------" >> /var/log
/oracle
        ;;
  restart)
        echo -n "Restarting Oracle Databases: "
        echo "----------------------------------------------------" >> /var/log
/oracle
        date +"! %T %a %D : Restarting Oracle Databases as part of system up."
>> /var/log/oracle
        echo "----------------------------------------------------" >> /var/log
/oracle
        su - oracle -c dbstop >> /var/log/oracle
        su - oracle -c dbstart >> /var/log/oracle
        echo "Done."
        echo -n "Restarting Oracle Listeners: "
        su - oracle -c "lsnrctl stop" >> /var/log/oracle
        su - oracle -c "lsnrctl start" >> /var/log/oracle
        echo "Done."
        echo ""
        echo "----------------------------------------------------" >> /var/log
/oracle
        date +"! %T %a %D : Finished." >> /var/log/oracle
        echo "----------------------------------------------------" >> /var/log
/oracle
        touch /var/lock/subsys/oracle
        ;;
  *)
        echo "Usage: oracle {start|stop|restart}"
        exit 1
esac
       ______________________________________________________________

   Il vaut la peine de vrifier si le fichier arrte et dmarre vraiment
   correctement les bases de donnes pour le systme. Vrifiez le fichier
   de log, /var/log/oracle, pour les messages d'erreur.

   Une fois que le script marche, nous devons crer les liens symboliques
   de start et kill dans les rpertoires appropris de niveau d'excution
   (runlevel) /etc/rc.d/rcX.d.

   Les commandes suivantes assureront que les bases de donnes vont
   dmarrer dans les niveaux d'excution 2,3 et 4:
       ______________________________________________________________

$ ln -s ../init.d/oracle /etc/rc.d/rc2.d/S99oracle
$ ln -s ../init.d/oracle /etc/rc.d/rc3.d/S99oracle
$ ln -s ../init.d/oracle /etc/rc.d/rc4.d/S99oracle
       ______________________________________________________________

   Pour arrter les bases de donnes avant un ramorage ou arrt, nous
   avons besoin des liens suivants:
       ______________________________________________________________

$ ln -s ../init.d/oracle /etc/rc.d/rc0.d/K01oracle          # Halting
$ ln -s ../init.d/oracle /etc/rc.d/rc6.d/K01oracle          # Rebooting
       ______________________________________________________________

7. Autres trucs

7.1 Agent Intelligent

   Si vous avez besoin d'un Agent Intelligent Oracle, vous pouvez
   l'excuter sans changement de la configuration.

   Pour dmarrer le AI, essayez:
       ______________________________________________________________

$ lsnrctl dbsnmp_start
       ______________________________________________________________

   Pour arrter l'AI, essayez:
       ______________________________________________________________

$ lsnrctl dbsnmp_stop
       ______________________________________________________________

   Il ne semble pas y avoir de message indiquant le lancement avec succs
   ou non de l'agent intelligent. Cependant, l'AI rpond au gestionnaire
   _Enterprise_ sur le ct client. Donc, je ne peux que supposer qu'il
   marche.

8. Dpannage

   Voir ci-dessous les diffrents conseils de dpannage.

8.1 Je ne peux pas crer une base de donnes en utilisant Oracle 7.2.x.

   Les fichiers expdis par Oracle dans les versions 7.2.x sont
   incorrects en supposant que vous voulez installer une configuration
   parallle de serveur. Le fichier init.ora contient la ligne suivante:
       ______________________________________________________________

# define parallel server (multi-instance) parameters
ifile = ora_system:initps.ora
       ______________________________________________________________

   Pour fixer le problme, mettez la en commentaire:
       ______________________________________________________________

# define parallel server (multi-instance) parameters
#ifile = ora_system:initps.ora
       ______________________________________________________________

8.2 J'obtiens les dfauts de segmentation dans le svrmgrl de la version
7.3.4.x.

   Ce problme m'a t signal par un certain nombre de personnes. Gerald
   Weber gerald_weber@master.co.at l'a rsolu:
       ______________________________________________________________

Bonjour Paul,

D'abord merci pour votre aide, mais aucun des problmes possubles que vous pens
ez n'tait responsable de mon problme.
Le problme esy l'mulateur iBCS lui-mme.
Il semble que Oracle excute les appels sysconf qui ne sont pas supports dans
la version en cours d'iBCS.
Regardez la trace:

<7>[22]615 sysconf(34)
<7>iBCS2 unsupported sysconf call 34
<7>[22]615 sysconf error return linux=-22 -> ibcs=22 <Invalid argument>
<7>[24]615 sysconf(34)
<7>iBCS2 unsupported sysconf call 34
<7>[24]615 sysconf error return linux=-22 -> ibcs=22 <Invalid argument>

Solution:  patcher iBCS-source.apply avec le diff-patch suivant:


--- sysconf.c   Sun Apr 19 19:19:15 1998
+++ sysconf.c.ori       Sun Apr 19 19:28:45 1998
@@ -60,7 +60,6 @@
 #define _SC_JOB_CONTROL        5
 #define _SC_SAVED_IDS  6
 #define _SC_VERSION    7
-#define _SC_HACK_FOR_ORACLE 34

 #define _SC_PAGESIZE   11

@@ -97,11 +96,6 @@
                case _SC_SAVED_IDS: {
                        return (1);
                }
-
-               case _SC_HACK_FOR_ORACLE: {
-                 return (1);
-               }
-

                case _SC_PAGESIZE: {
                  return PAGE_SIZE;
       ______________________________________________________________

9. Crdits

   Ce document est bas sur un document crit par Bob Withers. Des
   informations supplmentaires sont extraites des documents crits par
   Georg Rehfeld et David Mansfield.

   Relectures supplmentaires faites par Bob Withers, Mark Watling, Peter
   Sodhi et Greg Hankins.

   Mes remerciements vont au support immense de la part des gens
   impliqus dans ce document et aux recherches qu'ils ont effectues.
   Remerciements particuliers  Bob Withers et Mark Watling pour leurs
   commentaires additionnels et l'aide qu'ils m'ont apporte.
