Comment installer Oracle 11gR2 sur Ubuntu 14.04?

30

Veuillez me fournir les instructions pour installer oracle 11gr2 sur Ubuntu 14.04.

    
posée Prakash Shrestha 29.12.2014 - 20:28
la source

3 réponses

60

Étape 1: Télécharger Oracle Database Express Edition.

Étape 2: instructions avant d’installer Oracle

  1. Copiez le fichier téléchargé et collez-le dans le répertoire personnel.

  2. Décompressez en utilisant la commande:

    unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip 
    
  3. Installez les packages requis à l’aide de la commande:

    sudo apt-get install alien libaio1 unixodbc
    
  4. Entrez dans le dossier Disk1 en utilisant la commande:

    cd Disk1/
    
  5. Convertissez le format du paquet RPM au format de paquet DEB (utilisé par Ubuntu) en utilisant la commande:

    sudo alien --scripts -d oracle-xe-11.2.0-1.0.x86_64.rpm
    
  6. Créez le script chkconfig requis à l’aide de la commande:

    sudo pico /sbin/chkconfig
    

    L'éditeur de texte pico est lancé et les commandes sont affichées en bas de l'écran. Maintenant, copiez et collez les éléments suivants dans le fichier et enregistrez:

    #!/bin/bash
    # Oracle 11gR2 XE installer chkconfig hack for Ubuntu
    file=/etc/init.d/oracle-xe
    if [[ ! 'tail -n1 $file | grep INIT' ]]; then
        echo >> $file
        echo '### BEGIN INIT INFO' >> $file
        echo '# Provides: OracleXE' >> $file
        echo '# Required-Start: $remote_fs $syslog' >> $file
        echo '# Required-Stop: $remote_fs $syslog' >> $file
        echo '# Default-Start: 2 3 4 5' >> $file
        echo '# Default-Stop: 0 1 6' >> $file
        echo '# Short-Description: Oracle 11g Express Edition' >> $file
        echo '### END INIT INFO' >> $file
    fi
    update-rc.d oracle-xe defaults 80 01
    
  7. Modifiez l’autorisation du fichier chkconfig à l’aide de la commande:

    sudo chmod 755 /sbin/chkconfig  
    
  8. Définir les paramètres du noyau. Oracle 11gR2 XE nécessite des paramètres de noyau supplémentaires que vous devez définir à l'aide de la commande:

    sudo pico /etc/sysctl.d/60-oracle.conf
    
  9. Copiez ce qui suit dans le fichier et sauvegardez:

    # Oracle 11g XE kernel parameters 
    fs.file-max=6815744  
    net.ipv4.ip_local_port_range=9000 65000  
    kernel.sem=250 32000 100 128 
    kernel.shmmax=536870912 
    
  10. Vérifiez la modification à l’aide de la commande:

    sudo cat /etc/sysctl.d/60-oracle.conf 
    
  11. Vous devriez voir ce que vous avez entré plus tôt. Maintenant, chargez les paramètres du noyau:

    sudo service procps start
    
  12. Vérifiez que les nouveaux paramètres sont chargés en utilisant:

    sudo sysctl -q fs.file-max
    

    Vous devriez voir la valeur de fichier-max que vous avez entrée précédemment.

  13. Configurez le point de montage / dev / shm pour Oracle. Créez le fichier suivant à l'aide de la commande:

    sudo pico /etc/rc2.d/S01shm_load
    
  14. Copiez ce qui suit dans le fichier et enregistrez-le.

    #!/bin/sh
    case "" in
    start)
        mkdir /var/lock/subsys 2>/dev/null
        touch /var/lock/subsys/listener
        rm /dev/shm 2>/dev/null
        mkdir /dev/shm 2>/dev/null
    *)
        echo error
        exit 1
        ;;
    
    esac 
    
  15. Modifiez les permissions du fichier en utilisant la commande:

    sudo chmod 755 /etc/rc2.d/S01shm_load
    
  16. Exécutez maintenant les commandes suivantes:

    sudo ln -s /usr/bin/awk /bin/awk 
    sudo mkdir /var/lock/subsys 
    sudo touch /var/lock/subsys/listener
    

    Maintenant, redémarrez votre système

Étape 3: Installez Oracle

  1. Installez le SGBD Oracle à l’aide de la commande:

    sudo dpkg --install oracle-xe_11.2.0-2_amd64.deb
    
  2. Configurez Oracle à l'aide de la commande:

    sudo /etc/init.d/oracle-xe configure 
    
  3. Configurer les variables d'environnement en modifiant votre fichier .bashrc:

    pico ~/.bashrc
    
  4. Ajoutez les lignes suivantes à la fin du fichier:

    export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe
    export ORACLE_SID=XE
    export NLS_LANG='$ORACLE_HOME/bin/nls_lang.sh'
    export ORACLE_BASE=/u01/app/oracle
    export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
    export PATH=$ORACLE_HOME/bin:$PATH
    
  5. Chargez les modifications en exécutant votre profil:

    . ~/.bashrc
    
  6. Démarrez Oracle 11gR2 XE:

    sudo service oracle-xe start
    
  7. Ajoutez l’utilisateur YOURUSERNAME au groupe dba en utilisant la commande:

    sudo usermod -a -G dba YOURUSERNAME
    

Etape 4: Utilisation de l’Interface de commande Oracle XE

  1. Démarrez le serveur Oracle XE 11gR2 en utilisant la commande:

    sudo service oracle-xe start
    
  2. Démarrer le shell de ligne de commande en tant qu'administrateur système à l'aide de la commande:

    sqlplus sys as sysdba
    

    Entrez le mot de passe que vous avez donné lors de la configuration d’Oracle plus tôt. Vous allez maintenant être placé dans un environnement SQL qui comprend uniquement les commandes SQL.

  3. Créez un compte utilisateur régulier dans Oracle à l’aide de la commande SQL:

    create user USERNAME identified by PASSWORD;
    

    Remplacez USERNAME et PASSWORD par le nom d'utilisateur et le mot de passe de votre choix. S'il vous plaît rappelez-vous ce nom d'utilisateur et mot de passe. Si vous avez eu une erreur lors de l'exécution du message ci-dessus avec un message sur resetlogs, exécutez la commande SQL suivante et réessayez:

    alter database open resetlogs;
    
  4. Accordez des privilèges au compte d'utilisateur à l'aide de la commande SQL:

    grant connect, resource to USERNAME;
    

    Remplacez USERNAME et PASSWORD par le nom d'utilisateur et le mot de passe de votre choix. S'il vous plaît rappelez-vous ce nom d'utilisateur et mot de passe.

  5. Quittez le shell admin sys en utilisant la commande SQL:

    exit;
    
  6. Démarrez le shell en ligne de commande en tant qu’utilisateur normal à l’aide de la commande:

    sqlplus
    

    Maintenant, vous pouvez lancer des commandes SQL ...

réponse donnée Saikat Kundu 27.02.2016 - 12:35
la source
0

Merci pour le tutoriel détaillé mais je me suis trompé

touch: cannot touch '/var/lock/subsys/listener' .. 

dans l'étape sudo /etc/init.d/oracle-xe configure . Donc, comme suggéré sur lien , j'ai ajouté les lignes suivantes dans /etc/init.d/oracle-xe

if [ -L /dev/shm ]; then
    rm -rf /dev/shm
    mkdir /dev/shm
    mount -t tmpfs shmfs -o size=2048m /dev/shm
fi

if [ ! -d /var/lock/subsys ]; then
 mkdir /var/lock/subsys
 touch /var/lock/subsys/listener
fi

... et ça marche bien pour moi

    
réponse donnée drichirich 09.08.2016 - 13:33
la source
0

Cela a bien fonctionné, mais j'ai eu l'erreur suivante:

sudo /etc/init.d/oracle-xe start
[....] Starting oracle-xe (via systemctl): oracle-xe.serviceJob for oracle-xe.service failed because the control process exited with error code. See "systemctl status oracle-xe.service" and "journalctl -xe" for details.
 failed!

En regardant cela:

systemctl status oracle-xe.service
Jan 27 10:01:05 <myusername> su[29699]: No passwd entry for user 'oracle'

Je l'ai résolu en ajoutant simplement un utilisateur:

sudo adduser oracle

J'espère que cela aidera quelqu'un.

    
réponse donnée user2750563 27.01.2017 - 10:13
la source

Lire d'autres questions sur les étiquettes