Εγχειρίδιο του FreeBSD
Προηγ | Κεφάλαιο 11 Συμβατότητα με Εκτελέσιμα του Linux | Επόμενο

# 11.6 Εγκατάσταση της Oracle®

Συνεισφορά του Marcel Moolenaar.

## 11.6.1 Εισαγωγή

Το κείμενο αυτό περιγράφει τη διαδικασία εγκατάστασης των Oracle® 8.0.5 και Oracle 8.0.5.1 Enterprise Edition για Linux σε ένα σύστημα FreeBSD.

## 11.6.2 Εγκατάσταση του Περιβάλλοντος Linux

Σιγουρευτείτε ότι έχετε εγκαταστήσει τα `emulators/linux_base` και `devel/linux_devtools` από τη συλλογή των Ports. Αν αντιμετωπίζετε δυσκολίες με τα παραπάνω, ίσως χρειαστεί να τα εγκαταστήσετε από πακέτα ή από παλιότερες εκδόσεις της συλλογής των Ports.

Αν θέλετε να τρέξετε τον intelligent agent, θα χρειαστεί να εγκαταστήσετε και το πακέτο Red Hat Tcl: `tcl-8.0.3-20.i386.rpm`. Η εντολή για την εγκατάσταση μέσω του επίσημου RPM port (`archivers/rpm`) είναι:

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

Η εγκατάσταση του `package` θα πρέπει να γίνει ομαλά και χωρίς προβλήματα.

## 11.6.3 Ρυθμίζοντας το Περιβάλλον για την Oracle

Πριν την εγκατάσταση της Oracle, θα πρέπει να ρυθμίσετε σωστά το περιβάλλον του συστήματός σας. Το παρακάτω κείμενο περιγράφει τι ακριβώς πρέπει να κάνετε για να εκτελέσετε την Oracle για Linux στο FreeBSD, και δεν περιγράφει ότι υπάρχει ήδη στον οδηγό εγκατάστασης της Oracle.

### 11.6.3.1 Ρύθμιση του Πυρήνα

Όπως περιγράφει ο οδηγός εγκατάστασης της Oracle, θα πρέπει να ορίσετε τις τιμές της shared memory στο μέγιστο. Μην χρησιμοποιήσετε το `SHMMAX` στο FreeBSD. Το `SHMMAX` υπολογίζεται απλώς από το `SHMMAXPGS` και το `PGSIZE`. Επομένως καθορίστε το `SHMMAXPGS`. Όλες οι άλλες επιλογές μπορούν να οριστούν όπως περιγράφεται στον οδηγό. Για παράδειγμα:

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

Ορίστε τις τιμές των επιλογών έτσι ώστε να ταιριάζουν στη χρήση της Oracle που θέλετε να κάνετε.

Επίσης, επιβεβαιώστε ότι έχετε ενεργοποιήσει τις παρακάτω επιλογές στις ρυθμίσεις του πυρήνα:

    options SYSVSHM #SysV shared memory
    options SYSVSEM #SysV semaphores
    options SYSVMSG #SysV interprocess communication

### 11.6.3.2 Ο Χρήστης Oracle

Δημιουργήστε ένα χρήστη συστήματος με όνομα `oracle`, με τον ίδιο τρόπο που θα δημιουργούσατε και οποιονδήποτε άλλον χρήστη. Το μόνο ιδιαίτερο χαρακτηριστικό του χρήστη `oracle` είναι ότι χρειάζεται να του δώσετε ένα κέλυφος Linux. Προσθέστε το `/compat/linux/bin/bash` στο `/etc/shells` και ορίστε το κέλυφος του χρήστη `oracle` σε `/compat/linux/bin/bash`.

### 11.6.3.3 Το Περιβάλλον

Εκτός των συνηθισμένων μεταβλητών της Oracle, όπως οι `ORACLE_HOME` και `ORACLE_SID` θα πρέπει να ορίσετε και τις ακόλουθες μεταβλητές περιβάλλοντος:

Μεταβλητή | Τιμή
--- | ---
`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`

Σας συνιστούμε να ορίσετε όλες τις μεταβλητές περιβάλλοντος στο αρχείο `.profile`. Ένα ολοκληρωμένο παράδειγμα είναι το παρακάτω:

    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

## 11.6.4 Εγκατάσταση της Oracle

Λόγω μια μικρής έλλειψης στον εξομοιωτή του Linux, θα χρειαστεί να δημιουργήσετε έναν κατάλογο με το όνομα `.oracle` μέσα στο `/var/tmp`, πριν ξεκινήσετε το πρόγραμμα εγκατάστασης. Ο κατάλογος αυτός θα πρέπει να ανήκει στον χρήστη `oracle`. Θα πρέπει τώρα να πραγματοποιήσετε την εγκατάσταση της Oracle δίχως κανένα πρόβλημα. Αν αντιμετωπίζετε όμως ακόμη προβλήματα, ελέγξτε την έκδοση της Oracle που έχετε ή/και τις ρυθμίσεις σας! Αφότου έχετε πραγματοποιήσει την εγκατάσταση της Oracle, εφαρμόστε τα patches που περιγράφονται στις δύο παρακάτω ενότητες.

Ένα συχνό πρόβλημα είναι ότι δεν γίνεται σωστή εγκατάσταση του προσαρμογέα του πρωτοκόλλου TCP. Αυτό έχει ως αποτέλεσμα να μην μπορείτε να ξεκινήσετε τους TCP listeners. Οι ακόλουθες οδηγίες θα σας βοηθήσουν να λύσετε αυτό το πρόβλημα.:

    # 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

Μη ξεχάσετε να τρέξετε ξανά το `root.sh`

### 11.6.4.1 Διόρθωση του root.sh

Όταν εγκαθιστάτε την Oracle, κάποιες ενέργειες, οι οποίες χρειάζονται να γίνουν ως `root`, καταγράφονται σε ένα shell script που λέγεται `root.sh`. Το script αυτό δημιουργείται στον κατάλογο `orainst`. Εφαρμόστε το παρακάτω patch στο `root.sh`, για να μπορέσει να βρει και να χρησιμοποιήσει το `chown`. Εναλλακτικά, τρέξτε το script μέσα από ένα κέλυφος Linux.

    *** 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

Όταν δεν κάνετε χρήση του CD για την εγκατάσταση, μπορείτε να περάσετε το patch για το `root.sh`, στην πηγή εγκατάστασης. To αρχείο ονομάζεται `rthd.sh` και βρίσκεται στον κατάλογο `orainst`.

### 11.6.4.2 Διόρθωση του genclntsh

To script `genclntsh` χρησιμοποιείται για να δημιουργήσει μια shared client library. Τρέξτε το παρακάτω patch για να σβήσετε το καθορισμένο `PATH`:

    *** 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

## 11.6.5 Εκτέλεση της Oracle

Αφού έχετε ακολουθήσει αυτές τις οδηγίες, θα πρέπει να μπορείτε να εκτελέσετε την Oracle σαν να βρισκόσασταν σε ένα σύστημα Linux.

Προηγ | Αρχή | Επόμενο
Εγκαθιστώντας το MATLAB® | Πάνω | Προχωρημένα Θέματα

Αυτό το κείμενο, και άλλα κείμενα, μπορεί να βρεθεί στο ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.

Για ερωτήσεις σχετικά με το FreeBSD, διαβάστε την τεκμηρίωση πριν να επικοινωνήσετε με την <questions@FreeBSD.org>.
Για ερωτήσεις σχετικά με αυτή την τεκμηρίωση, στείλτε e-mail στην <doc@FreeBSD.org>.