This file is indexed.

/usr/share/doc/HOWTO/fr-html/Oracle-7-HOWTO.html is in doc-linux-fr-html 2013.01-3ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<html>
<head>
<meta name="generator" content=
"HTML Tidy for HTML5 for Linux version 5.2.0">
<meta name="GENERATOR" content="LinuxDoc-Tools 0.9.72">
<title>Oracle Database HOWTO</title>
</head>
<body>
<h1>Oracle Database HOWTO</h1>
<h2>Paul Haigh, <code><a href=
"mailto:paul@nailed.demon.co.uk">paul@nailed.demon.co.uk</a></code><br>

Adaptation française par Stéphane Lee Chip Hing, <code><a href=
"mailto:slee@ile-maurice.com">slee@ile-maurice.com</a></code></h2>
v1.2, 04 août 1998
<hr>
<em>Un guide pour installer et configurer le Serveur de Base de
Données Oracle sur un système Linux.</em>
<hr>
<h2><a name="s1">1. Introduction</a></h2>
<h2><a name="ss1.1">1.1 Historique des Versions</a></h2>
<ul>
<li><code>v0.1 - 21 fév. 1998 - Paul Haigh - Version
Originale</code></li>
<li><code>v0.2 - 01 mars 1998 - Paul Haigh - Adjonction des
Commentaires des Relecteurs</code></li>
<li><code>v1.0 - 10 mars 1998 - Paul Haigh - Publié sous
LDP</code></li>
<li><code>v1.1 - 20 juin 1998 - Paul Haigh - Section Dépannage
ajoutée et rangement général</code></li>
<li><code>v1.2 - 04 août 1998 - Paul Haigh - Nouvelles d'Oracle
Corp ajoutée et section sur les Améloirations Futures
supprimée.</code></li>
</ul>
<h2><a name="ss1.2">1.2 Copyright</a></h2>
<p>Le HOWTO Oracle Database est copyright (c) 1998, Paul Haigh.</p>
<p>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.</p>
<p>La redistribution commerciale est autorisée et encouragée.
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 précisant celui ou celle qui a traduit ce
document.</p>
<h2><a name="ss1.3">1.3 Mise en garde</a></h2>
<p>Bien que j'ai essayé d'inclure les informations les plus
correctes et les plus récentes a ma disposition, je ne peux
garantir que leur utilisation ne va pas occasionner des pertes de
données ou de matériel. Je ne fournis AUCUNE GARANTIE sur les
informations dans ce HOWTO et je ne suis responsable d'aucune
conséquence résultant de l'utilisation des informations de ce
document.</p>
<h2><a name="ss1.4">1.4 But de ce HOWTO</a></h2>
<p>Dans ce HOWTO, je vais essayer de couvrir l'installation et
l'administration basique d'une base de données Oracle tournant sur
une machine Linux. Je vais couvrir particulièrement l'installation
du serveur Oracle, la configuration de SQL*Net et du client.</p>
<p>Ce document n'est pas un tutoriel complet sur l'utilisation et
l'administration d'une base de données Oracle. Si c'est cela que
vous recherchez, il y a de bons livres sur ces sujets publiés par
O'Reilly et autres.</p>
<p>Je ne vais pas non plus couvrir le développement des programmes
Oracle sous UNIX. Si cela vous est absolument nécessaire, je vous
recommanderais d'acheter le système de développement de SCO (avec
OpenServer 5.x) , dont on m'a dit qu'il pouvait être obtenu pour un
prix très raisonnable US $19, à <a href=
"http://www.sco.com">SCO</a></p>
<h2><a name="ss1.5">1.5 Pré-Requis</a></h2>
<p>Je suppose acquises un certain nombre de notions pour comprendre
la suite du HOWTO.</p>
<ul>
<li><b>Le CD Serveur Oracle pour SCO OpenServer (Version
7.3.3.0.0.)</b>
<dl>
<dd>
<p>Ceci <b>doit</b> être une copie légale. N'oubliez pas qu'Oracle
est une société commerciale et vend ses produits. Si vous voulez
une base de données compatible SQL gratuite, utilisez PostgreSQL ou
quelque chose de similaire.</p>
<p>Il est aussi possible d'installer Oracle, avec une licence
d'évaluation de 60 jours, à partir d'un fichier <code>tar</code>
téléchargeable sur le site web d'Oracle. Je ne l'ai pas
personnellement essayé et ce n'est pas vérifié.</p>
</dd>
</dl>
</li>
<li><b>Un Serveur Linux</b>
<dl>
<dd>
<p>Vous n'auriez pas lu ceci sans un... N'est-ce pas?</p>
</dd>
</dl>
</li>
<li><b>Noyau 2.0.30+</b>
<dl>
<dd>
<p>Je ne peux garantir que les instructions seront fiables pour les
autres noyaux. (ni pour le 2.0.30, d'ailleurs...)</p>
</dd>
</dl>
</li>
<li><b>iBCS</b>
<dl>
<dd>
<p>Il est très important que ceci soit installé et tourne avec la
version la plus récente possible pour votre plate-forme. (J'utilise
iBCS-2.0-10.i386.rpm de RedHat Linux).</p>
</dd>
</dl>
</li>
<li><b>Beaucoup d'espace disque</b>
<dl>
<dd>
<p>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. Néanmoins, je vais
essayer de souligner les endroits où l'on peut libérer de
l'espace.</p>
</dd>
</dl>
</li>
<li><b>32Mb+ Ram</b>
<dl>
<dd>
<p>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 réserves sur SCO!</p>
<p>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é.</p>
</dd>
</dl>
</li>
<li><b>Licences de Oracle</b>
<dl>
<dd>
<p>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 illégal.</p>
</dd>
</dl>
</li>
</ul>
<h2><a name="ss1.6">1.6 Nouvelles d'Oracle Corporation</a></h2>
<p>Oracle a cédé sous la pression de la communauté Linux. Oracle
Corporation a décidé de supporter <b>officiellement</b> Oracle 8
sur la plate-forme Linux (i386). Elle doit être lancé en décembre
1998, selon le site web d'Oracle.</p>
<p>Mieux encore, Oracle va aussi porter <code>Oracle
Applications</code> sur Linux. Il doit être disponible dans le
premier semestre 1999, selon le site web d'Oracle.</p>
<p>Références:</p>
<ul>
<li><code><a href=
"http://www.oracle.com/html/linux.html">http://www.oracle.com/html/linux.html</a></code></li>
<li><code><a href=
"http://www.news.com/News/Item/0,4,24436,00.html">http://www.news.com/News/Item/0,4,24436,00.html</a></code></li>
<li><code><a href=
"http://www.zdnet.com/pcweek/news/0720/20morac.html">http://www.zdnet.com/pcweek/news/0720/20morac.html</a></code></li>
</ul>
<h2><a name="s2">2. Installation du logiciel Oracle</a></h2>
<h2><a name="ss2.1">2.1 Préparation du Serveur</a></h2>
<h3>Création d'un Utilisateur Oracle</h3>
<p>Nous avons évidemment besoin d'un utilisateur pour maintenir la
base de données 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 défaut d'Oracle. Il inclut
l'utilisateur ORACLE et le groupe DBA.</p>
<ol>
<li>Se connecter comme root</li>
<li>Créer l'utilisateur <code>oracle</code> et le groupe
<code>dba</code>.
<blockquote>
<hr>
<pre><code>
$ groupadd dba 
$ useradd  oracle
</code></pre>
<hr></blockquote>
</li>
<li>S'assurer que le répertoire personnel est créé pour
l'utilisateur oracle.
<blockquote>
<hr>
<pre><code>
$ mkdir /home/oracle
$ mkdir /home/oracle/7.3.3.0.0 (Version of Oracle)
$ chown -R oracle.dba /home/oracle
</code></pre>
<hr></blockquote>
</li>
</ol>
<h2><a name="ss2.2">2.2 Installation depuis le CDROM</a></h2>
<p>Malheureusement, l'Installateur Oracle sur le CD SCO ne marchera
pas. Beaucoup de problèmes peut être rencontrés, des <code>core
dumps</code> aux blocages. On doit donc copier les fichiers du
CDROM manuellement et les décompresser:</p>
<p>(S'assurer que le CDROM est monté sur le système).</p>
<ol>
<li>Se connecter comme utilisateur Oracle</li>
<li>Changer de répertoire pour
<code>/home/oracle/7.3.3.0.0.</code></li>
<li>Copier les fichiers d'installation du CDROM
<blockquote>
<hr>
<pre><code>
$ cp -a /mnt/cdrom/* .
</code></pre>
<hr></blockquote>
</li>
<li>Décompresser les fichiers Oracle du CDROM.
<blockquote>
<hr>
<pre><code>
$ find . -name *_ -exec ~/7.3.3.0.0/orainst/oiuncomp {} \;
</code></pre>
<hr></blockquote>
</li>
</ol>
<h2><a name="ss2.3">2.3 Tâches de Post Installation</a></h2>
<h3>Tâches pour Root</h3>
<p>Ajouter les lignes suivantes dans <code>/etc/profile</code> ou
dans <code>.profile</code> pour chaque utilisateur d'Oracle.</p>
<blockquote>
<hr>
<pre><code>
# 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"
</code></pre>
<hr></blockquote>
<p>Nous devons aussi changer le propriétaire et les permissions de
l'utilitaire Oracle d'augmentation de <code>ulimit</code>.</p>
<blockquote>
<hr>
<pre><code>
$ chown root.root $ORACLE_HOME/bin/osh
$ chmod u+s $ORACLE_HOME/bin/osh
</code></pre>
<hr></blockquote>
<h3>Tâches pour Oracle</h3>
<p>Changer les permissions pour les fichiers Oracle pour s'assurer
de leur bonne exécution.</p>
<blockquote>
<hr>
<pre><code>
$ chmod +x $ORACLE_HOME/bin/*
$ chmod u+s $ORACLE_HOME/bin/oracle
</code></pre>
<hr></blockquote>
<p>Les outils Oracle demandent que les messages soient dans le
répertoire <code>$ORACLE_HOME/tool_name/mesg</code>. Donc, déplacez
les fichiers <code>msb</code> des répertoires <code>msg_ship</code>
aux répertoires <code>mesg</code>.</p>
<blockquote>
<hr>
<pre><code>
$ 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/.
</code></pre>
<hr></blockquote>
Créer les répertoires suivants, s'ils n'existent pas:
<blockquote>
<hr>
<pre><code>
$ mkdir $ORACLE_HOME/rdbms/log
$ mkdir $ORACLE_HOME/rdbms/audit
$ mkdir $ORACLE_HOME/network/log
</code></pre>
<hr></blockquote>
<h3>Ceux que vous pouvez enlever</h3>
<p>Les répertoires suivants peuvent être enlevés sans problème:</p>
<ul>
<li><code>$ORACLE_HOME/guicommon2/</code></li>
<li><code>$ORACLE_HOME/ctx/</code></li>
<li><code>$ORACLE_HOME/md/</code></li>
<li><code>$ORACLE_HOME/mlx/</code></li>
<li><code>$RACLE_HOME/precomp/</code></li>
<li><code>$ORACLE_HOME/slax/</code></li>
</ul>
<h2><a name="s3">3. Création d'une base de données</a></h2>
<p>Maintenant que le serveur Oracle est installé, nous devons créer
une base de données pour tester l'installation. <code>Si vous
utilisez Oracle 7.2.x ou une version anterieure, veuillez lire la
section Dépannage ci-dessous.</code></p>
<h2><a name="ss3.1">3.1 Créer le fichier d'Initialisation</a></h2>
<p>Copiez <code>$ORACLE_HOME/dbs/init.ora</code> vers
<code>$ORACLE_HOME/dbs/initorcl.ora</code>:</p>
<blockquote>
<hr>
<pre><code>
$ cd $ORACLE_HOME/dbs
$ cp init.ora initorcl.ora
</code></pre>
<hr></blockquote>
Le modifier en ajoutant les lignes suivantes:
<blockquote>
<hr>
<pre><code>
db_name = orcl
COMPATIBLE=7.3.3.0.0
</code></pre>
<hr></blockquote>
<h2><a name="ss3.2">3.2 Création du script pour l'installation de
la base de données</a></h2>
<p>Créer un fichier script nommé <code>makedb.sql</code> dans le
répertoire <code>$ORACLE_HOME/dbs</code>:</p>
<blockquote>
<hr>
<pre><code>
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
</code></pre>
<hr></blockquote>
<h2><a name="ss3.3">3.3 Exécuter le script pour l'installation de
la base de données</a></h2>
<p>Démarrer <code>svrmgrl</code> et exécuter le script:</p>
<blockquote>
<hr>
<pre><code>
$ 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&gt; connect internal
Connected.
SVRMGR&gt; 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&gt; @makedb
&lt;beaucoup de messages&gt;
SVRMGR&gt; exit
Server Manager complete.
</code></pre>
<hr></blockquote>
<h2><a name="ss3.4">3.4 Démarrer la base de données</a></h2>
<p>Premièrement, nous devons lancer la base de données manuellement
(nous l'automatiserons plus tard). Pour démarrer une base de
données Oracle, nous devons émettre la commande
<code>startup</code> en étant connecté localement:</p>
<blockquote>
<hr>
<pre><code>
$ 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&gt; connect internal
Connected.
SVRMGR&gt; 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&gt; exit
Server Manager complete.
</code></pre>
<hr></blockquote>
<h2><a name="ss3.5">3.5 Arrêter la base de données</a></h2>
<p>Il est important de mentionner ici que redémarrer un serveur
Linux sans fermer auparavant la base de données Oracle risque fort
de corrompre la base de données.</p>
<p>Donc, avant d'émettre la commande Linux <code>shutdown</code>,
il est sage de fermer le base de données:</p>
<blockquote>
<hr>
<pre><code>
$ 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&gt; connect internal
Connected.
SVRMGR&gt; shutdown
Database closed.
Database dismounted.
ORACLE instance shut down.
SVRMGR&gt; exit
Server Manager complete.
</code></pre>
<hr></blockquote>
<h2><a name="ss3.6">3.6 Créer un Utilisateur par défaut</a></h2>
<p>La base de données, telle qu'elle a été créée, a deux
utilisateurs spéciaux qui sont créés automatiquement. Ce sont;</p>
<blockquote>
<hr>
<pre><code>
Username                Password

SYSTEM                  MANAGER
SYS                     change_on_install
</code></pre>
<hr></blockquote>
<p>Ces utilisateurs sont typiquement utilisés pour maintenir les
informations sur le dictionnaire standard de données pour la base
de données. C'est une bonne idée de changer les mots de passe par
défaut aussitôt que possible.</p>
<p>Ceci peut être fait par:</p>
<blockquote>
<hr>
<pre><code>
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&gt; alter user system identified by &lt;newpassword&gt;;

User altered.

SQL&gt; alter user sys identified by &lt;newpassword&gt;;

User altered.

SQL&gt; exit;
Disconnected from Oracle7 Server Release 7.3.3.0.0 - Production Release
PL/SQL Release 2.3.3.0.0 - Production
</code></pre>
<hr></blockquote>
<p>Comme l'utilisateur <code>system/manager</code> est similaire à
l'utilisateur <code>root</code> sur une machine UNIX, nous devons
créer un utilisateur avec moins de pouvoir à causer des dégats
possibles (rappelez-vous de lancer la base de données avant
d'essayer de créer un utilisateur).</p>
<p>Se connecter à SQL*Plus et créer un utilisateur:</p>
<blockquote>
<hr>
<pre><code>
$ 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&gt; create user &lt;user&gt; identified by &lt;psw&gt; 
  2  default tablespace users 
  3  temporary tablespace temp;

User created.

SQL&gt; grant connect, resource to &lt;user&gt;

Grant succeeded.

SQL&gt; exit
Disconnected from Oracle7 Server Release 7.3.3.0.0 - Production Release
PL/SQL Release 2.3.3.0.0 - Production
</code></pre>
<hr></blockquote>
<p>Maintenant que vous avez un nouvel utilisateur sur le système,
vous pouvez jouer avec. Pour se connecter sur la base de données
Oracle:</p>
<blockquote>
<hr>
<pre><code>
$ sqlplus &lt;user&gt;/&lt;password&gt;
</code></pre>
<hr></blockquote>
<p>Si ceci s'exécute sans messages d'erreur, vous avez donc une
base de données Oracle qui marche. Si vous ne voulez vous connecter
qu'à partir de ce serveur, votre travail est donc terminé.
Amusez-vous!</p>
<p>Si, cependant, comme la plupart des gens, vous voulez configurer
la partie réseau du logiciel pour que vous puissiez vous connecter
depuis d'autres machine, continuez votre lecture.</p>
<h2><a name="s4">4. Configurer SQL*Net sur le Serveur</a></h2>
<p>Tous ces fichiers configurent la partie réseau d'Oracle (SQL*Net
ou Net8 pour Oracle8). Ces fichiers doivent être créés sur le
serveur dans le répertoire
<code>$ORACLE_HOME/network/admin</code>.</p>
<h2><a name="ss4.1">4.1 <code>tnsnames.ora</code></a></h2>
<p>Le fichier <code>TNSNAMES.ORA</code> identifie les services
disponibles depuis la machine. Dans notre cas, nous décrirons
toutes les bases de données que le serveur a monté. Pour chaque
base de données sur votre serveur, ajouter une section comme
ci-dessous:</p>
<blockquote>
<hr>
<pre><code>
orcl.world =
  (DESCRIPTION =
    (ADDRESS_LIST =
        (ADDRESS =
          (COMMUNITY = tcp.world)
          (PROTOCOL = TCP)
          (Host = &lt;INSERER LE NOM LOGIQUE DU SERVEUR ICI&gt; )
          (Port = 1521)
        )
        (ADDRESS =
          (COMMUNITY = tcp.world)
          (PROTOCOL = TCP)
          (Host = &lt;INSERER LE NOM LOGIQUE DU SERVEUR ICI&gt; )
          (Port = 1526)
        )
    )
    (CONNECT_DATA = (SID = ORCL)
    )
  )
</code></pre>
<hr></blockquote>
<h2><a name="ss4.2">4.2 <code>listener.ora</code></a></h2>
<p>Le fichier <code>listener.ora</code> contient la description des
services auxquels d'autres machines sont autorisées à se connecter
et toutes les configurations nécessaires pour l'écouteur du
serveur.</p>
<p>Il contient les sections pour le nom de l'écouteur, son adresse,
les bases de données desservies par l'écouteur et les paramètres de
configuration.</p>
<p>Voici un exemple:</p>
<blockquote>
<hr>
<pre><code>
# Nom de l'écouteur et les adresses a écouter
LISTENER =
        ( ADDRESS_LIST =
                (ADDRESS =
                        (PROTOCOL=tcp)
                        (HOST=&lt;INSERT HOST&gt;)
                        (PORT=1521)
                        (COMMUNITY=UK_SUP_TCPIP)
                )
                (ADDRESS =
                        (PROTOCOL=ipc)
                        (KEY=700)
                        (COMMUNITY=UK_SUP_TCPIP)
                )
        )

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

# Début des paramètres de configuration
TRACE_LEVEL_LISTENER=OFF
TRACE_FILE_LISTENER = "listener"
LOG_FILE_LISTENER = "listener"
CONNECT_TIMEOUT_LISTENER = 10
STOP_LISTENER = YES
DBA_GROUP = dba
</code></pre>
<hr></blockquote>
<h2><a name="ss4.3">4.3 <code>sqlnet.ora</code></a></h2>
<p>Le fichier <code>sqlnet.ora</code> contient la configuration
pour le noeud du réseau. Ceci est indépendant du nombre de bases de
données ou du nombre d'écouteurs. La chose la plus importante dans
ce fichier est la variable de configuration <code>Timeout des
Connexions Mortes</code>.</p>
<p>Le timeout des connexions mortes vérifie chaque processus
entrant à la base de données et assure que le côté client répond
toujours. Si le client (de tout type) ne répond pas, le processus
en tâche de fond du serveur Oracle sera tué.</p>
<p>Ceci est très utile si vous avez plusieurs clients qui accèdent
à la base de données, surtout pendant la phase de développement où
ces clients ne réussiront certainement pas à sortir proprement de
la base de données Oracle.</p>
<p>Voici une copie de mon fichier <code>sqlnet.ora</code> pour vous
servir d'exemple:</p>
<blockquote>
<hr>
<pre><code>
TRACE_LEVEL_CLIENT = OFF
sqlnet.expire_time = 30         # le nombre de secondes entre les vérifications des clients.
names.default_domain = world
name.default_zone = world
</code></pre>
<hr></blockquote>
<h2><a name="ss4.4">4.4 Lancer et Arrêter les Ecouteurs.</a></h2>
<p>Maintenant que la configuration des écouteurs et de SQL*Net est
finie, nous pouvons essayer de connecter la base de données en
utilisant la partie réseau. (Avant nous utilisions l'accès direct à
la base de données, alors qu'ici nous simulons une connexion depuis
une machine cliente distante).</p>
<p>Pour lancer l'écouteur en utilisant la configuration
ci-dessus:</p>
<blockquote>
<hr>
<pre><code>
$ 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&gt; 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_SUP_TCPIP))
STATUS of the LISTENER
------------------------
Alias                     LISTENER
Version                   TNSLSNR for SCO System V/386: Version 2.3.3.0.0 - Production
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&gt; exit
</code></pre>
<hr></blockquote>
<p>Pour arrêter les écouteurs:</p>
<blockquote>
<hr>
<pre><code>
$ 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&gt; stop
Connecting to (ADDRESS=(PROTOCOL=tcp)(HOST=magic.com)(PORT=1521)(COMMUNITY=UK_SUP_TCPIP))
The command completed successfully
LSNRCTL&gt; exit
</code></pre>
<hr></blockquote>
<p>Si vous avez une configuration DNS qui ne retourne pas l'adresse
IP pour le nom logique specifié, le lancement et l'arrêt de
l'écouteur prendront donc in certain temps. (2-3 mins. dépendant de
la variable timeout du DNS). Si c'est le cas , ne vous inquiétez
pas. Soyez patient.</p>
<h2><a name="s5">5. Configuration du Client</a></h2>
<h2><a name="ss5.1">5.1 Clients Windows</a></h2>
<p>La configuration SQL*Net sur un PC avec les versions récentes du
logiciel Client Oracle est très facile. La meilleure façon (et la
plus facile) pour réussir l'installation d'un client qui marche
entièrement, est d'utiliser l'outil <code>SQL*Net Easy
Configuration</code> fourni par Oracle.</p>
<p>Cet outil a une interface qui vous guidera dans l'installation
des fichiers <code>tnsnames.ora</code> et
<code>sqlnet.ora</code>.</p>
<p>Sélectionnez "Add Database Alias" et entrez le nom pour l'alias
demandé. Cet alias est le nom par lequel vous allez vous référer à
l'instance de la base de données, et doit donc être le même que
celui de l'instance (orcl dans ce cas).</p>
<p>Sélectionnez TCP/IP comme protocole, le nom logique de la
machine hébergeant la base de données et le nom de l'instance de la
base de données.</p>
<p>C'est tout.</p>
<p>Cependant, si vous n'avez pas l'outil <code>SQL*Net Easy
Configuration Tool</code>, ne vous inquietez pas. Vous pouvez
simplement créer les fichiers <code>tnsnames.ora</code> et
<code>sqlnet.ora</code> dans le répertoire
<code>$ORACLE_HOME/network/admin</code> sur le client, exactement
comme sur le serveur. Il fournira comme alias le même que sur le
serveur (toujours une bonne idée de toute façon).</p>
<h2><a name="ss5.2">5.2 Clients Unix</a></h2>
<p>Les clients UNIX ne sont pas très différents des clients
Windows. Si vous avez <code>Network Manager</code> d'Oracle, alors
utilisez-le de la même façon que ci-dessus, sinon vous pouvez
utiliser juste les mêmes fichiers de configuration que sur le
serveur dans le répertoire
<code>$ORACLE_HOME/network/admin</code>.</p>
<h2><a name="s6">6. Lancement et Arrêt Automatique</a></h2>
<h2><a name="ss6.1">6.1 <code>dbstart</code> et
<code>dbstop</code></a></h2>
<p>Le démarrage et l'arrêt automatique de la base de données Oracle
peuvent être effectués (avec la version 7.3.3.0.0) avec les
fichiers <code>dbstart</code> et <code>dbshut</code>, tous deux
fournis par Oracle. Ces fichiers dépendent sur l'existence du
fichier <code>/etc/oratab</code> pour fonctionner (bien qu'en
modifiant les fichiers <code>dbshut</code> et <code>dbstart</code>
il puissent être déplacés).</p>
<p>Le format du fichier <code>/etc/oratab</code> est le
suivant:</p>
<blockquote>
<hr>
<pre><code>
SID:ORACLE_HOME:AUTO
</code></pre>
<hr></blockquote>
<p>Un exemple:</p>
<blockquote>
<hr>
<pre><code>
orcl:/home/oracle/7.3.3.0.0:Y
leaveup:/home/oracle/7.3.2.1.0:N
</code></pre>
<hr></blockquote>
<h2><a name="ss6.2">6.2 <code>init.d</code> et
<code>rc.d</code></a></h2>
<p>Pour démarrer et arrêter la base de données quand la machine se
lance ou s'éteint, il faut modifier les routines de démarrage pour
la machine Linux. Ceci est très 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)</p>
<p>Premièrement, nous devons créer le script qui exécutera
<code>dbshut</code> et <code>dbstart</code> dans le répertoire
<code>/etc/rc.d/init.d</code> . Créez le fichier suivant comme
<code>/etc/rc.d/init.d/oracle</code>:</p>
<blockquote>
<hr>
<pre><code>
#!/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 "----------------------------------------------------" &gt;&gt; /var/log/oracle
        date +"! %T %a %D : Starting Oracle Databases as part of system up." &gt;&gt; /var/log/oracle
        echo "----------------------------------------------------" &gt;&gt; /var/log/oracle
        su - oracle -c dbstart &gt;&gt; /var/log/oracle
        echo "Done."
        echo -n "Starting Oracle Listeners: "
        su - oracle -c "lsnrctl start" &gt;&gt; /var/log/oracle
        echo "Done."
        echo ""
        echo "----------------------------------------------------" &gt;&gt; /var/log/oracle
        date +"! %T %a %D : Finished." &gt;&gt; /var/log/oracle
        echo "----------------------------------------------------" &gt;&gt; /var/log/oracle
        touch /var/lock/subsys/oracle
        ;;
  stop)
        echo -n "Shutting Down Oracle Listeners: "
        echo "----------------------------------------------------" &gt;&gt; /var/log/oracle
        date +"! %T %a %D : Shutting Down Oracle Databases as part of system down." &gt;&gt; /var/log/oracle
        echo "----------------------------------------------------" &gt;&gt; /var/log/oracle
        su - oracle -c "lsnrctl stop" &gt;&gt; /var/log/oracle
        echo "Done."
        rm -f /var/lock/subsys/oracle
        echo -n "Shutting Down Oracle Databases: "
        su - oracle -c dbshut &gt;&gt; /var/log/oracle
        echo "Done."
        echo ""
        echo "----------------------------------------------------" &gt;&gt; /var/log/oracle
        date +"! %T %a %D : Finished." &gt;&gt; /var/log/oracle
        echo "----------------------------------------------------" &gt;&gt; /var/log/oracle
        ;;
  restart)
        echo -n "Restarting Oracle Databases: "
        echo "----------------------------------------------------" &gt;&gt; /var/log/oracle
        date +"! %T %a %D : Restarting Oracle Databases as part of system up." &gt;&gt; /var/log/oracle
        echo "----------------------------------------------------" &gt;&gt; /var/log/oracle
        su - oracle -c dbstop &gt;&gt; /var/log/oracle
        su - oracle -c dbstart &gt;&gt; /var/log/oracle
        echo "Done."
        echo -n "Restarting Oracle Listeners: "
        su - oracle -c "lsnrctl stop" &gt;&gt; /var/log/oracle
        su - oracle -c "lsnrctl start" &gt;&gt; /var/log/oracle
        echo "Done."
        echo ""
        echo "----------------------------------------------------" &gt;&gt; /var/log/oracle
        date +"! %T %a %D : Finished." &gt;&gt; /var/log/oracle
        echo "----------------------------------------------------" &gt;&gt; /var/log/oracle
        touch /var/lock/subsys/oracle
        ;;
  *)
        echo "Usage: oracle {start|stop|restart}"
        exit 1
esac
</code></pre>
<hr></blockquote>
<p>Il vaut la peine de vérifier si le fichier arrête et démarre
vraiment correctement les bases de données pour le système.
Vérifiez le fichier de log, <code>/var/log/oracle</code>, pour les
messages d'erreur.</p>
<p>Une fois que le script marche, nous devons créer les liens
symboliques de <code>start</code> et <code>kill</code> dans les
répertoires appropriés de niveau d'exécution (runlevel)
<code>/etc/rc.d/rcX.d</code>.</p>
<p>Les commandes suivantes assureront que les bases de données vont
démarrer dans les niveaux d'exécution 2,3 et 4:</p>
<blockquote>
<hr>
<pre><code>
$ 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
</code></pre>
<hr></blockquote>
<p>Pour arrêter les bases de données avant un réamorçage ou arrêt,
nous avons besoin des liens suivants:</p>
<blockquote>
<hr>
<pre><code>
$ ln -s ../init.d/oracle /etc/rc.d/rc0.d/K01oracle          # Halting
$ ln -s ../init.d/oracle /etc/rc.d/rc6.d/K01oracle          # Rebooting
</code></pre>
<hr></blockquote>
<h2><a name="s7">7. Autres trucs</a></h2>
<h2><a name="ss7.1">7.1 Agent Intelligent</a></h2>
<p>Si vous avez besoin d'un <code>Agent Intelligent Oracle</code>,
vous pouvez l'exécuter sans changement de la configuration.</p>
<p>Pour démarrer le AI, essayez:</p>
<blockquote>
<hr>
<pre><code>
$ lsnrctl dbsnmp_start
</code></pre>
<hr></blockquote>
<p>Pour arrêter l'AI, essayez:</p>
<blockquote>
<hr>
<pre><code>
$ lsnrctl dbsnmp_stop
</code></pre>
<hr></blockquote>
<p>Il ne semble pas y avoir de message indiquant le lancement avec
succès ou non de l'agent intelligent. Cependant, l'AI répond au
gestionnaire <em>Enterprise</em> sur le côté client. Donc, je ne
peux que supposer qu'il marche.</p>
<h2><a name="s8">8. Dépannage</a></h2>
<p>Voir ci-dessous les différents conseils de dépannage.</p>
<h2><a name="ss8.1">8.1 Je ne peux pas créer une base de données en
utilisant Oracle 7.2.x.</a></h2>
<p>Les fichiers expédiés par Oracle dans les versions 7.2.x sont
incorrects en supposant que vous voulez installer une configuration
parallèle de serveur. Le fichier <code>init.ora</code> contient la
ligne suivante:</p>
<blockquote>
<hr>
<pre><code>
# define parallel server (multi-instance) parameters
ifile = ora_system:initps.ora
</code></pre>
<hr></blockquote>
Pour fixer le problème, mettez la en commentaire:
<blockquote>
<hr>
<pre><code>
# define parallel server (multi-instance) parameters
#ifile = ora_system:initps.ora
</code></pre>
<hr></blockquote>
<h2><a name="ss8.2">8.2 J'obtiens les défauts de segmentation dans
le <code>svrmgrl</code> de la version 7.3.4.x.</a></h2>
<p>Ce problème m'a été signalé par un certain nombre de personnes.
Gerald Weber <code>gerald_weber@master.co.at</code> l'a résolu:</p>
<blockquote>
<hr>
<pre><code>
Bonjour Paul,

D'abord merci pour votre aide, mais aucun des problèmes possubles que vous pensez n'était responsable de mon problème. 
Le problème esy l'émulateur iBCS lui-même.
Il semble que Oracle exécute les appels sysconf qui ne sont pas supportés dans la version en cours d'iBCS. 
Regardez la trace:

&lt;7&gt;[22]615 sysconf(34)
&lt;7&gt;iBCS2 unsupported sysconf call 34
&lt;7&gt;[22]615 sysconf error return linux=-22 -&gt; ibcs=22 &lt;Invalid argument&gt;
&lt;7&gt;[24]615 sysconf(34)
&lt;7&gt;iBCS2 unsupported sysconf call 34
&lt;7&gt;[24]615 sysconf error return linux=-22 -&gt; ibcs=22 &lt;Invalid argument&gt;

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;
</code></pre>
<hr></blockquote>
<h2><a name="s9">9. Crédits</a></h2>
<p>Ce document est basé sur un document écrit par <a href=
"mailto:bwit@pobox.com">Bob Withers</a>. Des informations
supplémentaires sont extraites des documents écrits par <a href=
"mailto:rehfeld@wmd.de">Georg Rehfeld</a> et <a href=
"mailto:david@claremont.com">David Mansfield</a>.</p>
<p>Relectures supplémentaires faites par Bob Withers, <a href=
"mailto:mwatling@mjw-ltd.demon.co.uk">Mark Watling</a>, <a href=
"mailto:petersodhi@unn.unisys.com">Peter Sodhi</a> et <a href=
"mailto:greg.hankins@cc.gatech.edu">Greg Hankins</a>.</p>
<p>Mes remerciements vont au support immense de la part des gens
impliqués dans ce document et aux recherches qu'ils ont effectuées.
Remerciements particuliers à Bob Withers et Mark Watling pour leurs
commentaires additionnels et l'aide qu'ils m'ont apportée.</p>
</body>
</html>