Veuillez me fournir les instructions pour installer Oracle 11gr2 sur Ubuntu 14.04.
Réponses
Trop de publicités?1. Téléchargez Oracle Database Express Edition.
2. Instructions avant d'installer la base de données Oracle
-
Copiez le fichier téléchargé et collez-le dans le répertoire principal.
-
Décompressez en utilisant le fichier .zip téléchargé :
unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip
-
Installez les packages nécessaires :
sudo apt-get install alien libaio1 unixodbc # toujours valable en 22.04
-
Changez de répertoire vers le répertoire Disk1 :
cd Disk1/
-
Convertissez le format de package .rpm en format de package .deb (utilisé par Ubuntu) :
sudo alien --scripts -d oracle-xe-11.2.0-1.0.x86_64.rpm
-
Créez le script requis :
sudo nano /sbin/chkconfig
L'éditeur de texte nano est démarré et les commandes sont affichées en bas de l'écran. Copiez et collez maintenant ce qui suit 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
-
Changez les permissions du fichier chkconfig :
sudo chmod 755 /sbin/chkconfig
-
Configurez 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 nano /etc/sysctl.d/60-oracle.conf
-
Copiez ce qui suit dans le fichier et enregistrez :
# 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
-
Vérifiez les modifications :
sudo cat /etc/sysctl.d/60-oracle.conf
-
Vous devriez voir ce que vous avez saisi précédemment. Maintenant, chargez les paramètres du noyau :
sudo service procps start # Si cela ne fonctionne pas, essayez sudo systemctl start procps
-
Vérifiez que les nouveaux paramètres sont chargés :
sudo sysctl -q fs.file-max
Vous devriez voir la valeur file-max que vous avez saisie précédemment.
-
Configurez le point de montage
/dev/shm
pour Oracle. Créez le fichier suivant :sudo nano /etc/rc2.d/S01shm_load
-
Collez ce qui suit dans le fichier et enregistrez.
#!/bin/sh case "$1" 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
-
Changez les permissions du fichier :
sudo chmod 755 /etc/rc2.d/S01shm_load
-
Exécutez les commandes suivantes :
sudo ln -s /usr/bin/awk /bin/awk sudo mkdir /var/lock/subsys sudo touch /var/lock/subsys/listener sudo reboot
3. Installez la base de données Oracle
-
Installez Oracle DBMS :
sudo dpkg --install oracle-xe_11.2.0-2_amd64.deb
-
Configurez Oracle :
sudo /etc/init.d/oracle-xe configure
-
Configurez les variables d'environnement en éditant votre fichier .bashrc :
nano ~/.bashrc
-
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
-
Chargez les modifications en exécutant votre profil :
. ~/.bashrc
-
Démarrez Oracle 11gR2 XE :
sudo service oracle-xe start
-
Ajoutez l'utilisateur VOTRENOMUTILISATEUR au groupe dba en utilisant la commande :
sudo usermod -a -G dba VOTRENOMUTILISATEUR
4. Utilisation de l'interface en ligne de commande d'Oracle XE
-
Démarrez le serveur Oracle XE 11gR2 :
sudo service oracle-xe start
-
Démarrez l'interface en ligne de commande en tant qu'administrateur système :
sqlplus sys as sysdba
Entrez le mot de passe que vous avez donné lors de la configuration d'Oracle précédemment. Vous serez maintenant placé dans un environnement SQL qui comprend uniquement des commandes SQL.
-
Créez un compte utilisateur régulier dans Oracle en utilisant la commande SQL :
create user NOMUTILISATEUR identified by MOTDEPASSE;
Remplacez NOMUTILISATEUR et MOTDEPASSE par le nom d'utilisateur et le mot de passe de votre choix. Veuillez vous souvenir de ce nom d'utilisateur et de ce mot de passe. Si vous avez une erreur en exécutant ce qui précède avec un message sur resetlogs, exécutez alors la commande SQL suivante et réessayez :
alter database open resetlogs;
-
Accordez des privilèges au compte utilisateur en utilisant la commande SQL :
grant connect, resource to NOMUTILISATEUR;
Remplacez NOMUTILISATEUR et MOTDEPASSE par le nom d'utilisateur et le mot de passe de votre choix. Veuillez vous souvenir de ce nom d'utilisateur et de ce mot de passe.
-
Quittez l'interface d'administration système en utilisant la commande SQL :
exit;
-
Démarrez l'interface en ligne de commande en tant qu'utilisateur régulier en utilisant la commande :
sqlplus
Vous pouvez maintenant exécuter des commandes SQL.
Cela a bien fonctionné, cependant j'ai rencontré l'erreur suivante :
sudo /etc/init.d/oracle-xe start
[....] Démarrage de 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 examinant cela :
systemctl status oracle-xe.service
Jan 27 10:01:05 su[29699]: No passwd entry for user 'oracle'
J'ai résolu le problème en ajoutant simplement un utilisateur :
sudo adduser oracle
En espérant que cela aide quelqu'un.