Forniscimi la guida per installare l'oracle 11gr2 su Ubuntu 14.04.
Forniscimi la guida per installare l'oracle 11gr2 su Ubuntu 14.04.
Risposte:
Copia il file scaricato e incollalo nella home directory.
Decomprimi usando il comando:
unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip
Installa i pacchetti richiesti usando il comando:
sudo apt-get install alien libaio1 unixodbc
Entra nella cartella Disk1 usando il comando:
cd Disk1/
Convertire il formato del pacchetto RPM nel formato del pacchetto DEB (utilizzato da Ubuntu) usando il comando:
sudo alien --scripts -d oracle-xe-11.2.0-1.0.x86_64.rpm
Creare lo script chkconfig richiesto usando il comando:
sudo pico /sbin/chkconfig
Viene avviato l'editor di testo pico e i comandi vengono visualizzati nella parte inferiore dello schermo. Ora copia e incolla quanto segue nel file e salva:
#!/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
Cambia l'autorizzazione del file chkconfig usando il comando:
sudo chmod 755 /sbin/chkconfig
Imposta i parametri del kernel. Oracle 11gR2 XE richiede parametri del kernel aggiuntivi che è necessario impostare utilizzando il comando:
sudo pico /etc/sysctl.d/60-oracle.conf
Copia quanto segue nel file e salva:
# 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
Verifica la modifica utilizzando il comando:
sudo cat /etc/sysctl.d/60-oracle.conf
Dovresti vedere cosa hai inserito prima. Ora carica i parametri del kernel:
sudo service procps start
Verificare che i nuovi parametri vengano caricati utilizzando:
sudo sysctl -q fs.file-max
Dovresti vedere il valore massimo del file che hai inserito in precedenza.
Imposta il punto di montaggio / dev / shm per Oracle. Creare il seguente file usando il comando:
sudo pico /etc/rc2.d/S01shm_load
Copia quanto segue nel file e salva.
#!/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
Modifica le autorizzazioni del file usando il comando:
sudo chmod 755 /etc/rc2.d/S01shm_load
Ora esegui i seguenti comandi:
sudo ln -s /usr/bin/awk /bin/awk
sudo mkdir /var/lock/subsys
sudo touch /var/lock/subsys/listener
Ora riavvia il tuo sistema
Installa l'oracle DBMS usando il comando:
sudo dpkg --install oracle-xe_11.2.0-2_amd64.deb
Configurare Oracle utilizzando il comando:
sudo /etc/init.d/oracle-xe configure
Imposta le variabili di ambiente modificando il tuo file .bashrc:
pico ~/.bashrc
Aggiungi le seguenti righe alla fine del file:
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
Carica le modifiche eseguendo il tuo profilo:
. ~/.bashrc
Avviare Oracle 11gR2 XE:
sudo service oracle-xe start
Aggiungi l'utente YOURUSERNAME al gruppo dba usando il comando:
sudo usermod -a -G dba YOURUSERNAME
Avviare il server Oracle XE 11gR2 utilizzando il comando:
sudo service oracle-xe start
Avviare la shell della riga di comando come amministratore di sistema utilizzando il comando:
sqlplus sys as sysdba
Immettere la password fornita durante la configurazione di Oracle in precedenza. Ora verrai inserito in un ambiente SQL che comprende solo i comandi SQL.
Crea un normale account utente in Oracle usando il comando SQL:
create user USERNAME identified by PASSWORD;
Sostituisci USERNAME e PASSWORD con il nome utente e la password di tua scelta. Ricorda questo nome utente e password. Se si è verificato un errore durante l'esecuzione di quanto sopra con un messaggio relativo a resetlogs, eseguire il comando SQL seguente e riprovare:
alter database open resetlogs;
Concedere i privilegi all'account utente utilizzando il comando SQL:
grant connect, resource to USERNAME;
Sostituisci USERNAME e PASSWORD con il nome utente e la password di tua scelta. Ricorda questo nome utente e password.
Esci dalla shell dell'amministratore di sistema usando il comando SQL:
exit;
Avviare la shell della riga di comando come utente normale usando il comando:
sqlplus
Ora puoi eseguire i comandi 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
sembra mancare ;;
indicando la fine di un'alternativa alla riga 7.
sudo service procps restart
invece disudo service procps start
Grazie per il tutorial dettagliato ma ho riscontrato errori
touch: cannot touch '/var/lock/subsys/listener' ..
nel passaggio sudo /etc/init.d/oracle-xe configure
. Quindi, come suggerito su http://meandmyubuntulinux.blogspot.in/2012/05/installing-oracle-11g-r2-express.html ho aggiunto le seguenti righe in/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
... e funziona benissimo per me
/etc/rc2.d/S01shm_load
Viene visualizzato l'errore perché nella risposta di Saikat è presente un errore nella sceneggiatura . Risolvere questo sarebbe una soluzione più pulita. Modificherò la risposta con lo script corretto.
Funzionava bene, tuttavia ho riscontrato il seguente errore:
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!
Guardandoci dentro:
systemctl status oracle-xe.service
Jan 27 10:01:05 <myusername> su[29699]: No passwd entry for user 'oracle'
L'ho risolto semplicemente aggiungendo un utente:
sudo adduser oracle
Spero che questo aiuti qualcuno.