Siga este guia para instalar o Oracle 11g no Ubuntu. Funciona sem falhas.
1) Faça o download do Oracle Database Express Edition
Faça o download do Oracle Database Express Edição 11g Release 2 para Linux x64 .
2). Siga as instruções de pré-instalação:
a) Abra o terminal no qual você baixou o arquivo e descompacte usando o comando:
unzip oracle-xe-11.2.0-1.0.x86_64.rpm.zip
b) Instale os pacotes necessários usando o comando:
sudo apt-get install alien libaio1 unixodbc
c) Converta o formato do pacote RPM para o formato de pacote DEB (que é usado pelo Ubuntu) usando o comando:
sudo alien --scripts -d oracle-xe-11.2.0-1.0.x86_64.rpm
d) Crie o script chkconfig necessário usando o comando:
sudo pico /sbin/chkconfig
O editor de texto pico é iniciado e os comandos são exibidos na parte inferior da tela. Agora copie e cole o seguinte no arquivo e salve:
#!/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
e) Altere a permissão do arquivo chkconfig usando o comando:
sudo mod 755 /sbin/chkconfig
f) Defina os parâmetros do kernel. O Oracle 11gR2 XE requer parâmetros adicionais do kernel que você precisa definir usando o comando:
sudo pico /etc/sysctl.d/60-oracle.conf
Copie o seguinte no arquivo e salve:
# 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
g) Verifique a mudança usando o comando:
sudo cat /etc/sysctl.d/60-oracle.conf
h) Você deve ver o que você digitou anteriormente. Agora carregue os parâmetros do kernel:
sudo service procps start
i) Verifique se os novos parâmetros foram carregados usando:
sudo sysctl -q fs.file-max
j) Você deve ver o valor máximo de arquivo digitado anteriormente.
Configure /dev/shm
ponto de montagem para o Oracle. Crie o seguinte arquivo usando o comando:
sudo pico /etc/rc2.d/S01shm_load
k) Copie o seguinte no arquivo e salve.
#!/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
mount -t tmpfs shmfs -o size=2048m /dev/shm ;;
*) echo error
exit 1 ;;
esac
l) Altere as permissões do arquivo usando o comando:
sudo chmod 755 /etc/rc2.d/S01shm_load
m) Execute os seguintes comandos:
sudo ln -s /usr/bin/awk /bin/awk
sudo mkdir /var/lock/subsys
sudo touch /var/lock/subsys/listener
n) Instale o oracle DBMS usando o comando:
sudo dpkg --install oracle-xe_11.2.0-2_amd64.deb
o) Configure o Oracle usando o comando:
sudo /etc/init.d/oracle-xe configure
Digite as seguintes informações: Uma porta HTTP válida para o Oracle Application Express (o padrão é 8080) Uma porta válida para o listener do banco de dados Oracle (o padrão é 1521) Uma senha para as contas de usuário administrativo SYS e SYSTEM Confirme a senha para contas de usuário administrativo SYS e SYSTEM Se você deseja que o banco de dados seja iniciado automaticamente quando o computador for iniciado (próxima reinicialização).
p) Configure variáveis de ambiente editando seu arquivo .bashrc:
pico ~/.bashrc
Adicione as seguintes linhas ao final do arquivo:
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
q) Carregue as alterações executando seu perfil:
. ~/.profile
r) Inicie o Oracle 11gR2 XE:
sudo service oracle-xe start
s) Adicione o usuário YOURUSERNAME ao grupo dba usando o comando
sudo usermod -a -G dba YOURUSERNAME
t) Inicie o servidor Oracle XE 11gR2 usando o comando:
sudo service oracle-xe start
u) Inicie o shell da linha de comando como o administrador do sistema usando o comando:
sqlplus sys as sysdba
Digite a senha que você deu ao configurar o Oracle anteriormente. Agora você será colocado em um ambiente SQL que entende apenas comandos SQL.
Crie uma conta de usuário regular no Oracle usando o comando SQL:
create user USERNAME identified by PASSWORD;
Substitua USERNAME e PASSWORD pelo nome de usuário e senha de sua escolha. Por favor, lembre-se deste nome de usuário e senha. Se você teve erro ao executar o acima com uma mensagem sobre resetlogs, execute o seguinte comando SQL e tente novamente:
alter database open resetlogs
Conceda privilégios à conta do usuário usando o comando SQL:
grant connect, resource to USERNAME;
Substitua USERNAME e PASSWORD pelo nome de usuário e senha de sua escolha. Por favor, lembre-se deste nome de usuário e senha. Saia do shell sysadmin usando o comando SQL: Saída; Inicie o shell da linha de comandos como um usuário comum usando o comando:
sqlplus
Você será solicitado a fornecer um nome de usuário e senha. Uma vez autenticado, você poderá digitar os comandos SQL padrão