Installare Oracle 11g su Red Hat

Questa e' una guida, la piu' semplice possibile, per installare Oracle 11g su Linux Red Hat [NdE Oracle 11g R1: questo documento e' del 2007, per installare la versione 11g R2 seguite questo documento].
Si tratta di una pagina volutamente incompleta ma che vuole riportare gli elementi essenziali della configurazione in modo semplice, chiaro e, non ultimo, in italiano! Per maggiori dettagli fate riferimento alla documentazione ufficiale.
Il documento descrive: Prerequisiti, Preparazione, Installazione, Post Installazione, Varie ed eventuali, ...


Prerequisiti


Sistema con un Linux Red Hat ES 4 (Intel)
5GB di disco libero (un'installazione tipica richiede 3.5GB...)
FS x Temp 80MB (meglio se e' 1GB, cosi' si puo' creare un DB subito)
Swap 150MB
Accesso come root al sistema ed X11 funzionante! (eg. deve funzionare xclock&)
Software Oracle 11g (11.1.0.6)
Attenzione: la prima versione rilasciata il 14 Agosto 2007 funziona solo su Linux con processori x86

Packages: Installazione di default +
 binutils-2.*
 elfutils-libelf-0.*
 glibc-2.*
 glibc-common-2.*
 libgcc-3.*
 libstdc++-3.*
 compat-libstdc++-33*
 make-3.*
 unixODBC-2.*
 glibc-devel-2.*
 gcc-3.*
 gcc-c++-3.*
 libstdc++-devel-3.*
 libaio-0.*
 libaio-devel-0.*
 sysstat-5.*
 elfutils-libelf-devel-0.*
 unixODBC-devel-2.*



Preparazione

Da eseguire come utente root!

Scaricare il software da Oracle

Preparare un FS sufficientemente ampio
Se lo /tmp non e' sufficiente si puo' utilizzare una qualsiasi
directory impostando la variabile d'ambiente TMP.

Creare un oracle user, groups, ... configurare i profile
 # groupadd -g 20 dba
 # useradd -u 500 -d /home/oracle -G "dba" -m  -s /bin/bash oracle11g
 # grep nobody /etc/passwd
 Nobody:x:99:99:Nobody:/:/sbin/nobody
  
 $ vi ~oracle/.bash_profile
 umask 022
 ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
 TMP=/u01/bigtmp; export TMP
 TMPDIR=$TMP; export TMPDIR
 
Configurare i parametri del kernel: vi /etc/sysctl.conf
  # Parametri per Oracle -- INIZIO
  kernel.shmall = 2097152
  kernel.shmmax = 2147483648 # Il valore minore tra 4GB e meta' della memoria fisica 
  kernel.shmmni = 4096
  # semafori: semmsl, semmns, semopm, semmni
  kernel.sem = 250 32000 100 128
  net.ipv4.ip_local_port_range = 1024 65000
  net.core.rmem_default=4194304
  net.core.rmem_max=4194304
  net.core.wmem_default=262144
  net.core.wmem_max=262144
  # Parametri per Oracle -- FINE

 quindi lanciare /sbin/sysctl -p  per aggiornare il kernel

Nota (piu' facile ma non vengono salvati i valori):
  echo 256 32000 100 142 > /proc/sys/kernel/sem
  echo 2147483648 > /proc/sys/kernel/shmmax
  echo 4096 > /proc/sys/kernel/shmmni
  ...

Configurare lo ulimit: vi /etc/security/limits.conf
 # Oracle Limits Configuration
 *               soft    nproc           2047
 *               hard    nproc           16384
 *               soft    nofile          2048
 *               hard    nofile          16384

Impostare lo ulimit:
cat >> /etc/profile <<EOF
if [ \$USER = "oracle" ]; then 
 if [ \$SHELL = "/bin/ksh" ]; then
 ulimit -p 16384
 ulimit -n 65536
 else
 ulimit -u 16384 -n 65536
 fi
 umask 022
fi
EOF

cat >> /etc/csh.login <<EOF
if ( \$USER == "oracle" ) then
 limit maxproc 16384
 limit descriptors 65536
 umask 022
endif
EOF

 ln -s /sbin/fuser /bin/fuser


Installazione


Importante: da eseguire come utente oracle!

Decomprimere il SW Oracle (unzip)

Iniziare l'installazione:
xhost + 		# Ovviamente sulla propria Workstation!!
set DISPLAY=IP_Workstation:0
./runInstaller

Rispondere con il default a tutte le domande.
Eseguire gli script, come utente root, quando richiesto
Non dimenticare le password inserite durante l'installazione!!



Post installazione


Controllare che Oracle funzioni (eg. sqlplus http://hostname:1158/em)

Configurare lo startup (/etc/rc3.d /etc/oratab /etc/rc3.d/S35vncserver ...)

Buon divertimento! Have a lot of Fun! Que te diviertas! Diverte-te!


Altre informazioni...

E' disponibile un'ampia documentazione ufficiale sul sito Oracle tra cui la guida per l'installazione. Su web si trova gia' molto al riguardo, tra i molti documenti disponibili ho trovato sintetica ed utile questa pagina.

Per creare nuovi database utilizzare dbca

La configurazione ottimale dello storage richiede un disegno specifico ed un po' di esperienza...

Le opzioni della GUI di installazione sono innumerevoli...

A volte e' utile ignorare i prerequisiti o installare su una versione non certificata:
1) ./runInstaller -ignoreSysPrereqs
2) Modificare oraparam inserendo nella sezione [Certified Versions] la versione Linux utilizzata
Ovviamente a vostro rischio e pericolo!

Titolo: Installazione di Oracle 11g su Linux Red Hat
Livello: Medio (2/5)
Data: 15 Agosto 2007
Versione: 1.0.1 - 1 Aprile 2008
Autore: mail [AT] meo.bogliolo.name