Veuillez me fournir des instructions pour installer Oracle 11gr2 sur Ubuntu 14.04.
Veuillez me fournir des instructions pour installer Oracle 11gr2 sur Ubuntu 14.04.
Réponses:
Copiez le fichier téléchargé et collez-le dans le répertoire de base.
Décompressez à l'aide de la commande:
unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip
Installez les packages requis à l'aide de la commande:
sudo apt-get install alien libaio1 unixodbc
Entrez dans le dossier Disk1 en utilisant la commande:
cd Disk1/
Convertissez le format du package RPM au format du package DEB (utilisé par Ubuntu) à l’aide de la commande suivante:
sudo alien --scripts -d oracle-xe-11.2.0-1.0.x86_64.rpm
Créez le script chkconfig requis à l'aide de la commande suivante:
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 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 la permission du fichier chkconfig en utilisant la commande:
sudo chmod 755 /sbin/chkconfig
Définissez 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
Copiez le fichier suivant 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 le changement à l'aide de la commande:
sudo cat /etc/sysctl.d/60-oracle.conf
Vous devriez voir ce que vous avez entré plus tôt. Maintenant, chargez les paramètres du noyau:
sudo service procps start
Vérifiez que les nouveaux paramètres sont chargés en utilisant:
sudo sysctl -q fs.file-max
Vous devriez voir la valeur file-max que vous avez entrée précédemment.
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
Copiez le texte suivant dans le fichier et enregistrez-le.
#!/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 en utilisant la commande:
sudo chmod 755 /etc/rc2.d/S01shm_load
Maintenant, exécutez 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
Installez le SGBD oracle à l’aide de la commande suivante:
sudo dpkg --install oracle-xe_11.2.0-2_amd64.deb
Configurez Oracle à l'aide de la commande:
sudo /etc/init.d/oracle-xe configure
Configurez les variables d’environnement en modifiant votre fichier .bashrc:
pico ~/.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 YOURUSERNAME au groupe dba à l’aide de la commande suivante:
sudo usermod -a -G dba YOURUSERNAME
Démarrez le serveur Oracle XE 11gR2 à l’aide de la commande suivante:
sudo service oracle-xe start
Démarrez le shell de ligne de commande en tant qu'administrateur système à l'aide de la commande suivante:
sqlplus sys as sysdba
Entrez le mot de passe que vous avez donné lors de la configuration d'Oracle précédemment. Vous allez maintenant être placé dans un environnement SQL ne comprenant que les commandes SQL.
Créez un compte utilisateur normal 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 rencontrez une erreur lors de l’exécution de ce qui précède avec un message sur resetlogs, exécutez la commande SQL suivante et réessayez:
alter database open resetlogs;
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.
Quittez le shell admin sys à l’aide de la commande SQL:
exit;
Démarrez le shell en ligne de commande en tant qu'utilisateur régulier à l'aide de la commande:
sqlplus
Maintenant, vous pouvez exécuter des commandes SQL ...
Starting Oracle Net Listener...touch: cannot touch '/var/lock/subsys/listener': No such file or directory Done Configuring database... Database Configuration failed. Look into /u01/app/oracle/product/11.2.0/xe/config/log for details
/etc/rc2.d/S01shm_load
semble manquer, ;;
indiquant la fin d'une alternative à la ligne 7.
sudo service procps restart
au lieu desudo service procps start
Merci pour le tutoriel détaillé mais j'obtiens une erreur
touch: cannot touch '/var/lock/subsys/listener' ..
dans le pas sudo /etc/init.d/oracle-xe configure
. Donc, comme suggéré sur http://meandmyubuntulinux.blogspot.in/2012/05/installing-oracle-11g-r2-express.html, 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
/etc/rc2.d/S01shm_load
dans la réponse de Saikat. Ce problème serait une solution plus propre. Je vais éditer la réponse avec le script correct.
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 dedans:
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 ça aide quelqu'un.