Oracle (Nederlands)
LET OP: Handleiding nog niet gereed
Dit artikel behandelt de installatie van Oracle 11g (r2) - 64-bit.
In deze handleiding wordt er vanuit gegaan dat Xorg is geconfigureerd en er een Window_Manager of Desktop_Environment is geinstalleerd.
Contents
Benodigdheden voor Oracle Database installatie
Dependencies
Vanuit de Arch repositories moet geinstalleerd worden:
- base-devel
- jre7-openjdk, pdksh, gdb, gawk, libelf, sysstat, libstdc++5, unzip, sudo, icu, lib32-libstdc++5, python2
- gcc-multilib, gcc-libs-multilib, libtool-multilib
Vervolgens moeten er symbolic links worden aangemaakt omdat de installatie software bepaalde bestanden op andere lokaties verwacht:
ln -s /usr/lib /usr/lib64 ln -s /usr/bin/basename /bin/basename rm /usr/bin/python ln -s /usr/bin/python2 /usr/bin/python ln -s /usr/lib64/libgcc_s.so.1 /lib64/
Oracle user
Maak een gebruiker oracle aan die lid is van de groep oinstall en dba:
groupadd oinstall groupadd dba useradd -m -g oinstall -G dba oracle
Configureer het wachtwoord voor deze gebruiker:
passwd oracle
Bewerk, bijvoorbeeld met vi
het .bashrc bestand van deze gebruiker
sudo oracle vi ~/.bashrc
En geef dit bestand de volgende inhoud:
export ORACLE_BASE=/oracle export ORACLE_HOME=/oracle/product/db export ORACLE_SID=xdb export ORACLE_INVENTORY=/oracle/inventory export ORACLE_BASE ORACLE_SID ORACLE_HOME export PATH=$ORACLE_HOME/bin:$PATH export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH export EDITOR=vi export VISUAL=vi
Waarbij je de editor vi kunt vervangen bij variabelen EDITOR en VISUAL door je eigen favoriete editor.
Configuratie
Kernel parameters
Een aantal kernel parameters moeten worden aangepast. Voeg aan het bestand /etc/sysctl.conf het volgende toe:
fs.file-max = 6815744 fs.aio-max-nr = 1048576 kernel.shmall = 2097152 kernel.shmmax = 2147483648 kernel.shmmni = 4096 kernel.sem = 250 32000 100 128 net.ipv4.ip_local_port_range = 9000 65500 net.core.rmem_default = 4194304 net.core.rmem_max = 4194304 net.core.wmem_default = 262144 net.core.wmem_max = 1048576
En activeer deze instellingen met:
sysctl -p
Pam Limits
Ook de PAM module limits (Zie ook: Realtime_process_management) moet geconfigureerd worden. Voeg aan het bestand /etc/security/limits.conf het volgende toe:
oracle soft nproc 2047 oracle hard nproc 16384 oracle soft nofile 1024 oracle hard nofile 65536
Installatie
Het meest gemakkelijke is om nu als de gebruiker oracle in te loggen. Als alternatief:
DISPLAY=:0.0; export DISPLAY; xhost + su oracle DISPLAY=:0.0; export DISPLAY
Download de software van: http://www.oracle.com/technology/software/products/database/index.html
En unzip deze:
su - unzip /usr/src/oracle/linux.x64_11gR2_database_2of2.zip -d /media unzip /usr/src/oracle/linux.x64_11gR2_database_2of2.zip -d /media
Op de nu ontstane directory structuur moeten de rechten worden aangepast:
chown -R oracle:oinstall /media/database
Directory structuur
Maak nu de directory structuur aan waar de Oracle software in geinstalleerd moet worden:
mkdir -p /oracle/{inventory,recovery,product/db}
Installatie
Start nu de installatie software:
/media/database/runInstaller
Je krijgt nu een aantal vragen:
- Installation option
- "Install database software only"
- Grid Options
- "Single instance database installation"
- Product Languages
- "English"
- Database Edition
- "Enterprise Edition"
- Installation Location
- Oracle Base: /oracle en de Software Location: /oracle/product/db
- Create Inventory
- Inventory Directory: /oracle/inventory en de oraInventory Group Name: oinstall
- Operating System Groups
- Database Administrator Group: dba en de Database Operator Group: oinstall
- Prerequisite Checks
- Ignore all
Errors
Tijdens de installatie krijg je een aantal foutmeldingen. De eerste foutmelding in de bijbehorende logfile is:
INFO: /usr/lib64/libstdc++.so.5: undefined reference to `memcpy@GLIBC_2.14' collect2: error: ld returned 1 exit status
Deze foutmelding negeren door op "Continue" te klikken. Helaas heeft dit wel tot gevolg dat de Lexical Compiler niet werkt.
De volgende foutmelding geeft in het logbestand:
/oracle/product/db/lib/libnnz11.so: could not read symbols: Invalid operation collect2: error: ld returned 1 exit status
Dit is op te lossen: open het bestand $ORACLE_HOME/sysman/lib/ins_emagent.mk in je favoriete editor en ga naar regel 190.
Vervang $(MK_EMAGENT_NMECTL)
door:
$(MK_EMAGENT_NMECTL) -lnnz11
Kies nu in de grafische installer voor "Retry"
Start scripts
Wanneer je de Oracle Database wilt starten tijdens het bootproces dan moeten er een tweetal init scripts aangemaakt worden.
/etc/rc.d/ora.listener
#!/bin/sh
case "$1" in
start) echo "Start Oracle Listeners" /bin/su $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl start LISTENER" ;; stop) /bin/su $ORACLE_OWNER -c "$ORACLE_HOME/bin/lsnrctl stop LISTENER" ;; esac
Afronding
Je krijgt nu in de grafische installer te zien dat 2 scripts als root moeten worden uitgevoerd:
su /oracle/inventory/orainstRoot.sh /oracle/product/db/root.sh
Het laatste script vraagt naar de full pathname. Vul hier in:
/usr/local/bin