Pacotes usados na instalação:
- Slackware 13.1
- Pacote libaio-0.3.109-i486-1 (nativo do Slackware 13.1 -> para instalar, caso seja necessário, você pode usar o comando: slackpkg install libaio)
- Pacote do Oracle XE 10.2 em formado rpm oracle-xe-10.2.0.1-1.0.i386.rpm (que pode ser baixado gratuitamente do site da Oracle)
- Pacote elvis-2.2_0-i486-2 (só e somente para edição de arquivo de configuração)
Máquina utilizada no processo:
- AMD K6 - 3 de 400Mhz
- 1.5 GB livre de espaço em disco para /usr/lib/oracle (eu usei 1,6Gb)
- 544MB de memória RAM
Criando usuário, grupo e configurando variáveis de ambiente
Com poder de root, crie o usuário oracle e o grupo dba:
# groupadd dba
# useradd -s /bin/bash -c "Oracle XE owner" -m -d /usr/lib/oracle -g dba oracle
# passwd oracle
Logue-se com o usuário recém criado oracle e configure variáveis de ambiente para este profile:
cat << __EOF__ > ~oracle/.oraenv
#!/bin/sh
ORACLE_HOME=/usr/lib/oracle/xe/app/oracle/product/10.2.0/server
LD_LIBRARY_PATH=${ORACLE_HOME}/lib
ORACLE_SID=XE
PATH=${ORACLE_HOME}/bin:$PATH
export ORACLE_HOME ORACLE_SID PATH
__EOF__
Crie o bash profile deste usuário:
cat << __EOF__ > ~oracle/.bash_profile
#!/bin/bash
. ~/.oraenv
__EOF__
Instalando pacotes
Volte para o usuário root.
Instale o libaio (caso seja necessário):
# slackpkg install libaio
Para saber se o mesmo já está instalado use:
# slackpkg search libaio
A partir do / rode o comando para instalação/extração do pacote rpm no seu sistema (onde você deve especificar a localização do seu pacote, no meu caso estava dentro do /root):
# cd /
# rpm2cpio /root/oracle-xe-10.2.0.1-1.0.i386.rpm | cpio -idv
Após este comando, executado a partir do /, será criada a seguinte estrutura em seu sistema:
/usr/lib/oracle/
Acertando permissões e parâmetros da instalação
Torne o script de inicialização executável e crie um link simbólico para o mesmo, seguindo o padrão do Slackware.
# chmod 755 /etc/init.d/oracle-xe
# ln -s /etc/init.d/oracle-xe /etc/rc.d
Modifique o arquivo
/etc/init.d/oracle-xe de forma que você possa ver a saída deste comando, edite /etc/init.d/oracle-xe com o elvis e altere estas strings:
:%s/-s \/bin\/bash//g
:%s/> \/dev\/null/# > \/dev\/null/g
Ajuste de permissões para o usuário oracle:
# chown -R oracle:dba /usr/lib/oracle
Ajuste quanto de memória será reservado para SGA e PGA (para mais informações sobre isso, leia o Oracle Database Express Edition 2 Day DBA 10g Release 2 (10.2), que pode ser baixado gratuitamente no site da Oracle).
Para uma instalação prática, segue meu exemplo. Para minha máquina com 544mb de ram, utilizei as seguintes configurações:
Ou seja, 272mb para SGA e 90mb para PGA.
Edite os arquivos
init.ora e
initXETemp.ora, que ficam em /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/config/scripts.
Troque os valores %sga_target% e %pga_aggregate_target% com os valores escolhidos, valor mínimo de 100M para SGA e 20M para PGA.
Segue como ficaram as linhas nos meus arquivos de configuração:
sga_target=272M
pga_aggregate_target=90M
ATENÇÃO: Você deve alterar os parâmetros acima nos dois arquivos init.ora e initXETemp.ora!