Installation de Oracle 12c sur Ubuntu 14.04 64 bits

Pré-requis pour l’installation du SGDR Oracle

Il faut savoir que Oracle est conçu pour tourner sur un environnement RedHat. Il y a donc quelques actions à effectuer sur Ubuntu pour adapter la distribution.

De plus, la version 12c est conçue pour s’exécuter en environnement 64 bits, les versions 32 bits ne sont pas supportées par le noyau.

Installation des dépendances :

Certaines librairies, non présentes par défaut sur Ubuntu, sont nécessaires au bon fonctionnement du SGBDR Oracle. Voici la commande à jouer dans le terminal :

sudo apt-get -y install alien autoconf automake autotools-dev binutils doxygen elfutils expat gawk gcc gcc-multilib g++-multilib libstdc++6.4.7-dev libstdc++6:i386 ksh less lib32z1 libaio1 libaio-dev libc6-dev libc6-dev-i386 libc6-i386 libelf-dev libltdl-dev libmotif4 libodbcinstq4-1 libodbcinstq4-1:i386 libpth-dev libstdc++5 lsb-cxx make pdksh openssh-server rlwrap rpm sysstat unixodbc unixodbc-dev x11-utils zlibc libglapi-mesa:i386 libglu1-mesa:i386 libqt4-opengl:i386 libpthread-workqueue0 libpthread-workqueue-dev libzthread-2.3-2 libzthread-dev libpthread-stubs0-dev lsb-rpm libtool libtiff5-dev unzip flex

Java 1.7 mininum est nécessaire pour l’installation et l’utilisation du SGBDR. Récupérer les sources sur internet et voici comment l’installer :


rpm -i /home/candy/Downloads/jdk-8u31-linux-x64.rpm
mkdir -p /usr/java
cd /usr/java/
tar xzvf jdk-8u31-linux-x64.tar.gz

Création des liens symboliques :

sudo su

ln -sf bash /bin/sh
ls -l /bin/sh
ln -s /usr/bin/awk /bin/awk
ln -s /usr/bin/rpm /bin/rpm
ln -s /usr/bin/basename /bin/basename

mkdir /etc/rc.d
for i in 0 1 2 3 4 5 6 S ; do ln -s /etc/rc$i.d /etc/rc.d/rc$i.d ; done

mkdir /usr/lib64
ln -s /usr/lib/x86_64-linux-gnu/ /usr/lib64
ln -s /lib/x86_64-linux-gnu/libgcc_s.so.1 /lib64/

exit

 

Création du Compte Utilisateur :

Ensuite, il est important de créer deux groupes et un compte utilisateur spécifique qui sera utilisé pour l’installation et propriétaires des outils Oracle.

Habituellement le compte utilisateur se nomme oracle et appartient au groupe Oracle Inventory (oinstall) comme groupe principal et au groupe OSDBA (dba) comme groupe secondaire. Voici les commandes nécessaires à la création de ces deux groupes et cet utilisateur :

sudo su
addgroup oinstall
addgroup dba
addgroup nobody
usermod -g nobody nobody
useradd -g oinstall -G dba -p password -d /home/oracle -s /bin/bash oracle
passwd oracle
mkdir /home/oracle /u01
chown -R oracle:dba /home/oracle /u01
mkdir -p /u01/app
chown -R oracle:oinstall /u01/app/
chmod -R 775 /u01/app/
exit

 

Configuration des paramètres du noyau :

Vérifier le contenu du fichier /etc/sysctl.conf pour qu’il soit conforme à l’image ci-dessous :

fs.suid_dumpable = 1 
kernel.shmall = 2097152 
kernel.shmax = 536870912 
kernel.shmmni = 4096 
kernel.sem = 250 32000 100 128 
fs.file-max = 6815744 
fs.aio-max-nr = 1048576 
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

 

Définir les limites du shell pour le compte oracle :

Ajouter dans le fichier  /etc/security/limits.conf les éléments suivants :

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

 

Modifier le fichier /etc/pam.d/login pour incorporer la ligne suivante :

session required pam_limits.so

 

Modifier le fichier /etc/profile en fonction de la distribution et du shell par défaut de l’utilisateur oracle.

if [ $USER = "oracle" ]; then 
    if [ $SHELL = "/bin/ksh" ]; then 
        ulimit -p 16384 
        ulimit -n 65536 
    else 
        ulimit -u 16384 
        -n 65536 
    fi 
fi

 

Appliquer les paramètres instantanément, grâce à la commande suivante sysctl -p

 

Modification du profile de l’utilisateur Oracle :

Modifier le fichier /home/oracle/.bash_profile pour ajouter la ligne suivante umask 022 qui permet de définir les droits d’accès des nouveaux fichiers.

Modifier le fichier /home/oracle/.bashrc dans le répertoire home de l’utilisateur oracle pour ajouter les variables d’environnements nécessaires au bon fonctionnement du SGBDR. Pour appliquer les changements, exécuter la commande : source ~/.bashrc

export JAVA_HOME=/usr/java/jdk1.8.0_31/bin/java
export PATH=$PATH:/usr/java/jdk1.8.0_31/bin

# Oracle Settings
TMP=/tmp;
export TMP TMPDIR=$TMP;
export TMPDIR ORACLE_HOSTNAME=ubuntu.local;
export ORACLE_HOSTNAME
ORACLE_UNQNAME=DB12C;
export ORACLE_UNQNAME
ORACLE_BASE=/u01/app/oracle;
export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/12/dbhome_1;
export ORACLE_HOME
ORACLE_SID=orcl;
export ORACLE_SID
PATH=/usr/sbin:$PATH;
export PATH
PATH=$ORACLE_HOME/bin:$PATH;
export PATH
LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib:/usr/lib64;
export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib;
export CLASSPATH

 

Configuration de la couche réseau :

Récupérer l’adresse IP à l’aide de la commande ifconfig. Récupérer le nom d’hôte avec la commande hostname et modifier le fichier /etc/hosts en conséquence.

Ajouter les droits de connexion au X Server pour l’adresse IP correspondante : xhost +IP

 

Configuration de la couche Oracle NET :

Modification du fichier /u01/app/oracle/product/12/dbhome_1/network/admin/sqlnet.ora comme suit :

TRACE_LEVEL_SERVER = ADMIN
ADR_BASE = /u01/app/oracle

 

Modification du fichier /u01/app/oracle/product/12/dbhome_1/network/admin/tnsname.ora comme suit :

LISTENER_ORCL =
  (ADDRESS = (PROTOCOL = TCP)(HOST = ubuntu.local)(PORT = 1521))


ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = ubuntu.local)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )

 

Modification du fichier /u01/app/oracle/product/12/dbhome_1/network/admin/listener.ora comme suit :

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (GLOBAL_DBNAME = orcl)
      (ORACLE_HOME = /u01/app/oracle/product/12/dbhome_1)
      (SID_NAME = orcl)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = ubuntu.local)(PORT = 1521))
    )
  )

ADR_BASE_LISTENER = /u01/app/oracle

 

Création de la base de données Oracle :

Télécharger les fichiers d’installation depuis le site internet Oracle.

  • linuxamd64_12c_database_1of2.zip
  • linuxamd64_12c_database_2of2.zip

Extraire le contenu de ces archives dans le répertoire /home/oracle. Vous aurez un répertoire database auquel il faut attribuer les droit oracle:oinstall.

Puis exécuter les commandes dans le terminal connecté en tant que oracle :


DISPLAY=:0.0 ; export DISPLAY
xhost +

cd /home/oracle/database
./runInstaller

Une interface graphique va s’ouvrir contenant une douzaine d’étapes qui vous permettra d’installer le noyau d’Oracle et de créer une première base de données.

 

 


Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *