10.6. Az Oracle(R) telepítése
Vissza | 10. fejezet - Bináris Linux kompatibilitás | Előre

## 10.6. Az Oracle(R) telepítése

Írta: Moolenaar, Marcel.

### 10.6.1. Előszó

Ez a leírás azt mutatja be, hogyan telepítsük FreeBSD-re az Oracle(R) 8.0.5 és Oracle(R) 8.0.5.1 Enterprise Edition Linux változatait.

### 10.6.2. A Linux környezet telepítése

Telepítsük az emulators/linux_base és devel/linux_devtools portokat a Portgyűjteményből. Amennyiben ennek során nehézségekbe ütköznénk, próbálkozzunk a korábbi változataikkal.

Fel kell raknunk a Red Hat Tcl csomagját is, ha az alkalmazáshoz tartozó intelligens ügynököt is futtatni szeretnénk. Ez a `tcl-8.0.3-20.i386.rpm`. A hivatalos RPM port segítségével az alábbi általános parancson keresztül tudunk csomagokat telepíteni:

    # rpm -i --ignoreos --root /compat/linux --dbpath /var/lib/rpm csomag

A `csomag` telepítésének semmilyen hibát nem kellene okoznia.

### 10.6.3. Az Oracle(R) környezetének létrehozása

Az Oracle(R) telepítéséhez először ki kell alakítanunk a megfelelő környezetet. Ez a leírás kifejezetten arról szól, hogy FreeBSD-n hogyan futtassuk a linuxos Oracle(R)-t, nem pedig az Oracle(R) telepítési útmutatójában bemutatottakat taglalja.

#### 10.6.3.1. A rendszermag hangolása

Ahogy az Oracle(R) telepítési útmutatójában is olvashatjuk, be kell állítanunk az osztott memória maximális méretét. FreeBSD alatt erre a célra ne használjuk az `SHMMAX` értéket, mivel az `SHMMAX` az `SHMMAXPGS` és `PGSIZE` értékekből számolódik ki. Ezért nekünk itt a `SHMMAXPGS` értékét kell meghatároznunk. Minden egyéb beállítás történhet az útmutatóban megadottak szerint. Például:

    options SHMMAXPGS=10000
    options SHMMNI=100
    options SHMSEG=10
    options SEMMNS=200
    options SEMMNI=70
    options SEMMSL=61

Hangoljuk be ezeket az értékeket az Oracle(R) tervezett használatához.

Emellett a konfigurációs állományban ne feledkezzünk meg az alábbi beállítások megadásáról sem:

    options SYSVSHM #SysV osztott memória
    options SYSVSEM #SysV szemaforok
    options SYSVMSG #SysV folyamatok közti kommunikáció

#### 10.6.3.2. Az Oracle(R) hozzáférése

Egy rendes hozzáféréshez hasonlóan hozzunk létre egy külön `oracle` hozzáférést is rendszerünkön. Az `oracle` hozzáférés csak annyiban különleges, hogy linuxos parancsértelmezőt kell társítanunk hozzá. Ehhez vegyük fel `/compat/linux/bin/bash` sort az `/etc/shells` állományba, majd állítsuk át az `oracle` nevű felhasználó parancsértelmezőjét a `/compat/linux/bin/bash` programra.

#### 10.6.3.3. Környezet

A megszokott Oracle(R) környezeti változók, mint például az `ORACLE_HOME` és `ORACLE_SID` mellett még definiálnunk kell a következőket is:

Változó | Érték
--- | ---
`LD_LIBRARY_PATH` | `$ORACLE_HOME/lib`
`CLASSPATH` | `$ORACLE_HOME/jdbc/lib/classes111.zip`
`PATH` | `/compat/linux/bin /compat/linux/sbin /compat/linux/usr/bin /compat/linux/usr/sbin /bin /sbin /usr/bin /usr/sbin /usr/local/bin $ORACLE_HOME/bin`

Javasoljuk, hogy az összes környezeti változót a `.profile` állományban adjuk meg. Ennek megfelelően a példa beállításai így fognak kinézni benne:

    ORACLE_BASE=/oracle; export ORACLE_BASE
    ORACLE_HOME=/oracle; export ORACLE_HOME
    LD_LIBRARY_PATH=$ORACLE_HOME/lib
    export LD_LIBRARY_PATH
    ORACLE_SID=ORCL; export ORACLE_SID
    ORACLE_TERM=386x; export ORACLE_TERM
    CLASSPATH=$ORACLE_HOME/jdbc/lib/classes111.zip
    export CLASSPATH
    PATH=/compat/linux/bin:/compat/linux/sbin:/compat/linux/usr/bin
    PATH=$PATH:/compat/linux/usr/sbin:/bin:/sbin:/usr/bin:/usr/sbin
    PATH=$PATH:/usr/local/bin:$ORACLE_HOME/bin
    export PATH

### 10.6.4. Az Oracle(R) telepítése

A Linux emulátorban meghúzódó apró egyenletlenségek miatt a telepítés előtt létre kell hoznunk egy `.oracle` nevű alkönyvtárat a `/var/tmp` könyvtárban. Helyezzük ezt az `oracle` felhasználó tulajdonába. Ezt követően minden további gond nélkül képesek leszünk az Oracle(R) telepítésére. Ha netalán mégis problémákba ütköznénk, először mindig az Oracle(R) telepítési és konfigurációs állományait ellenőrizzük! Az Oracle(R) telepítése után rakjuk fel a következő szakaszokban bemutatandó javításokat.

Gyakran problémát okoz, ha a TCP protokollt még nem telepítettük. Ennek következményeképpen ugyanis nem tudnak elindulni a TCP alapú szolgáltatások. Az alábbi műveletek ebben igyekeznek segíteni:

    # cd $ORACLE_HOME/network/lib
    # make -f ins_network.mk ntcontab.o
    # cd $ORACLE_HOME/lib
    # ar r libnetwork.a ntcontab.o
    # cd $ORACLE_HOME/network/lib
    # make -f ins_network.mk install

Ne felejtsük el ismét elindítani a `root.sh` szkriptet!

#### 10.6.4.1. A root.sh javítása

Az Oracle(R) telepítése során `root` (privilegizált) felhasználóként elvégzendő műveleteket a `root.sh` elnevezésű szkriptben találjuk. Ez a szkript az `orainst` könyvtárba kerül. A `chown` parancs helyes lefutásához alkalmazzuk az alább mellékelt javítást, vagy az egész szkriptet egy linuxos parancsértelmezőből indítsuk el.

    *** orainst/root.sh.orig Tue Oct 6 21:57:33 1998
    --- orainst/root.sh Mon Dec 28 15:58:53 1998
    ***************
    *** 31,37 ****
    # This is the default value for CHOWN
    # It will redefined later in this script for those ports
    # which have it conditionally defined in ss_install.h
    ! CHOWN=/bin/chown
    #
    # Define variables to be used in this script
    --- 31,37 ----
    # This is the default value for CHOWN
    # It will redefined later in this script for those ports
    # which have it conditionally defined in ss_install.h
    ! CHOWN=/usr/sbin/chown
    #
    # Define variables to be used in this script

Ha nem CD-ről telepítjük az Oracle(R)-t, akkor akár a `root.sh` forrását is kijavíthatjuk. A neve `rthd.sh`, és a forrásfa `orainst` könyvtárában találhatjuk.

#### 10.6.4.2. A genclntsh javítása

A `genclntsh` szkript a kliensek által használt osztott könyvtár létrehozására alkalmazható. Általában demók fordításához van rá szükség. Az alábbi javítás alkalmazásával a `PATH` változó értéke törölhető:

    *** bin/genclntsh.orig Wed Sep 30 07:37:19 1998
    --- bin/genclntsh Tue Dec 22 15:36:49 1998
    ***************
    *** 32,38 ****
    #
    # Explicit path to ensure that we're using the correct commands
    #PATH=/usr/bin:/usr/ccs/bin export PATH
    ! PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin export PATH
    #
    # each product MUST provide a $PRODUCT/admin/shrept.lst
    --- 32,38 ----
    #
    # Explicit path to ensure that we're using the correct commands
    #PATH=/usr/bin:/usr/ccs/bin export PATH
    ! #PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin export PATH
    #
    # each product MUST provide a $PRODUCT/admin/shrept.lst

### 10.6.5. Az Oracle(R) futtatása

Ha rendesen követtük az iménti utasításokat, akkor most már úgy tudjuk futtatni az Oracle(R)-t, mintha csak Linuxon futna.

Vissza | Fel | Előre
10.5. A MATLAB(R) telepítése | Főoldal | 10.7. Az SAP(R) R/3(R) telepítése

Ha kérdése van a FreeBSD-vel kapcsolatban, a következő címre írhat (angolul): <questions@FreeBSD.org>.
Ha ezzel a dokumentummal kapcsolatban van kérdése, kérjük erre a címre írjon: <gabor@FreeBSD.org>.