Installation Oracle 11g auf Debian Squeeze

3 minutes, 35 seconds

Ziel dieser Anleitung, ist eine lauffähige Oracle 11g Datenbank Installation auf Debian Squeeze (Minimal Installation). Das Setup der Datenbank benötigt ein X-Windows System. Hierfür werden wir auf dem Server VNC installieren. Somit kann die Datenbank auch über Fernwartung installiert werden. Für den späteren Betrieb des Datenbank-Server ist VNC nicht mehr nötig.

Testumgebung

  • frische Debian Squeeze x86 64Bit minimal Installation (ohne X-Server)
  • Server HP ML360 G6 mit 24GB Ram, Festplatte 120GB RAID-5
  • Hostname: oradbs.test.local
  • LAN IP: 192.168.10.5/24

Vorarbeiten

Installation Packete

Als erstes werden die benötigten Packete für VNC und die spätere Oracle Installation installiert.

aptitude install binutils autoconf automake bzip2 make libstdc++5 unzip zlibc libncurses5-dev fakeroot wget  build-essential libaio1 unixodbc xserver-xorg-video-dummy vnc4server x11-xserver-utils xterm wm2

Einrichtung Oracle Benutzer und Gruppen

groupadd oinstall
groupadd dba
useradd oracle -m -d /home/oracle -g oinstall -G dba -s /bin/bash
passwd oracle

Sytemkonfiguration

Anpassung Symlinks für Oracle Installer

ln -s /usr/bin/awk /bin/awk
ln -s /usr/bin/basename /bin/basename

Im nächsten Schritt weden default Systemparameter deffiniert, welche von Oracle empfohlen werden.

Bearbeite „/etc/security/limits.conf“ und füge die folgenden Werte hinzu.

oracle soft nproc 2047
oracle hard nproc 16384
oracle soft nofile 1024
oracle hard nofile 65536

Bearbeite „/etc/sysctl.conf“ und füge die folgenden Werte hinzu.

kernel.sem = 250 32000 100 128
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
net.ipv4.ip_local_port_range = 9000 65000
net.core.rmem_default = 262144
net.core.rmem_max = 4194304
net.core.wmem_default = 262144
net.core.wmem_max = 1048576
fs.aio-max-nr = 1048576
fs.file-max = 6815744
vm/hugetlb_shm_group = DBA_GROUP_ID

Der Wert DBA_GROUP_ID muss mit der ID der Gruppe „dba“ ersetzt werden

Host Datei „/etc/hosts“ anpassen bzw. prüfen.

127.0.0.1           localhost
127.0.0.1           oradbs
192.168.10.5        oradbs.test.local oradbs

VNC Umgebung

Starte als Benutzer oracle den VNC-Server vnc4server und beende den Prozess wieder. Öffne die Datei „/home/oracle/.vnc/xstartup“ und füge die folgenden Zeilen am Ende hinzu, fals nicht vorhanden.

x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & wm2 &

Oracle Installation

Einrichtung Umgebung

mkdir -p /u01/app/
chown -R oracle:oinstall /u01
chmod -R 775 /u01

Download & Install

Gehe zu https://www.oracle.com/technetwork/database/enterprise-edition/downloads/index.html , lade die Oracle Datenbank 11g x86 (64Bit) herunter und entpacke die Software Pakete

unzip  linux.x64_11gR2_database_1of2.zip
unzip  linux.x64_11gR2_database_2of2.zip

Als Benutzer oracle starte den Installer. In diesen Szenario wird der Installer über ssh gestartet. Hierfür muss der -X Flag gesetzt werden.

ssh -X oracle@oradbs.test.local

Wechsel in das Oracle Software Verzeichnis und starte den Installer mit:

database/runInstaller -ignoreSysPrereqs

Nach einer kurzen Zeit öffnet sich das Installer-Fenster. Wähle die Enterprise Edition aus, passe die Pfade an, setzte die Passwörter und Optionen so wie gewünscht. Bei der Umgebungsprüfung muss alles auf Ignorieren gesetzt werden damit weiter Installiert werden kann. Folge dem Installationsprozess und am Ende führe die „root scripte“ aus.

Nacharbeiten

Nach Abschluss der Installation, müssen noch einige Arbeiten durchgeführt werden, damit die Datenbank ordnungsgemäß laufen kann.

Init Script

Damit die Datenbank beim Start/Stop des Sever automatisch Startet bzw. Stopt, wird ein Initscript angelegt

create /etc/init.d/oradb

und der folgenden Inhalt eingefügt.

#!/bin/sh
# chkconfig: 345 99 10
# description: Oracle auto start-stop script.
#
# Set ORA_HOME to be equivalent to the $ORACLE_HOME
# from which you wish to execute dbstart and dbshut;
#
# Set ORA_OWNER to the user id of the owner of the
# Oracle database in ORA_HOME.

ORA_HOME=/u01/app/oracle/product/11.2.0/dbhome_1
ORA_OWNER=oracle
ORACLE_UNQNAME=orcl
if [ ! -f $ORA_HOME/bin/dbstart ] then
echo "Oracle startup: cannot start"
exit
fi

case "$1" in
'start')
# Start the Oracle databases:
# The following command assumes that the oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl start"
su - $ORA_OWNER -c $ORA_HOME/bin/dbstart
su - $ORA_OWNER -c "$ORA_HOME/bin/emctl start dbconsole"
;;
'stop')
# Stop the Oracle databases:
# The following command assumes that the oracle login
# will not prompt the user for any values
su - $ORA_OWNER -c $ORA_HOME/bin/dbshut
su - $ORA_OWNER -c "$ORA_HOME/bin/lsnrctl stop"
su - $ORA_OWNER -c "$ORA_HOME/bin/emctl stop dbconsole"
;;
esac

nun noch ausführbar machen und dem Run-Level hinzufügen

chmod 750 /etc/init.d/oradb
update-rc.d oradb defaults

Bearbeite im Verzeichnis „/u01/app/oracle/product/11.2.0/dbhome_1/bin/“ das dbstart und dbshut Script und ändere den Eintrag

ORACLE_HOME_LISTNER=$1

zu

ORACLE_HOME_LISTNER=${1:-$ORACLE_HOME}

Oracle Instanz Autostart

Bearbeite die Datei „/etc/oratab“ und ändere den Eintrag wie folgt

orcl:/u01/app/oracle/product/11.2.0/dbhome_1:Y

Oracle Umgebung setzen

Bearbeite für den Benutzer oracle die Datei „/home/oracle/.profile“ und füge die folgenden Einträge am Ende hinzu

ORACLE_HOSTNAME=oradbs.test.local
export ORACLE_HOSTNAME
ORACLE_BASE=/u01/app/oracle
export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1
export ORACLE_HOME
ORACLE_SID=orcl
export ORACLE_SID
ORACLE_UNQNAME=orcl
export ORACLE_UNQNAME
ORACLE_TERM=xterm
export ORACLE_TERM
PATH=/usr/sbin:$PATH
export PATH
PATH=$ORACLE_HOME/bin:$PATH
export PATH

Hiermit ist die Installation beendet und kann getestet werden.

Previous Next