Oracle XE no Slackware

Ja era hora da Oracle lançar algum produto para pequeno porte, como o Oracle XE.

Mesmo com limitação de execução de 1 instância, 1 Gb de ram e limitação a 1
processador, creio que seja mais que suficiente para muitas aplicações simples.

Esse foi o procedimento que fiz para instala-lo no slackware 10.1 com o kernel 2.6.13.

Preparação

Primeiramente tive de converter o rpm em um tgz.

rpm2tgz oracle-xe-10.2.0.1-0.1.i386.rpm

Após isso, tive de criar o grupo e usuários.

groupadd dba
useradd -g dba -m oraclexe

Tivemos de instalar o pacote libaio 0.3.96, que é uma biblioteca com licenca LGPL da Oracle para IO assincrono:


wget http://www.gesinet.it/oracle/libaio-0.3.96.tar.gz

tar xvzf libaio-0.3.96.tar.gz
cd libaio-0.3.96
make
make install

Instalação

A instalação do pacote transformado é feita como de qualquer pacote tgz:
installpkg oracle-xe-10.2.0.1-0.1.i386.tgz

Devido ao script de startup nao rolar legal, tive de fazer diversos acertos nele, sendo eles:

Tive de criar a pasta /etc/sysconfig no slack. :s

Tive de copiar o script de startup de /usr/lib/oracle/xe/app/oracle/product/10.2.0/server/config/scripts/oracle-xe
para /etc/rc.d e fiz diversas alteracoes no script de startup, portanto, elas podem ser vistas neste diff:
16c16
< . /etc/init.d/functions

> #. /etc/init.d/functions
99c99,112
< init_status

> #init_status
>
> #
> # setKernelParms
> #
> # Set required kernel parameters for Oracle.
> #
> setKernelParms()
> {
> echo 536870912 > /proc/sys/kernel/shmmax
> echo 4096 > /proc/sys/kernel/shmmni
> echo 2097152 > /proc/sys/kernel/shmall
> echo 65536 > /proc/sys/fs/file-max
> }
173a187,190
> sed -i “s/%sga_target%/256M/g” $ORACLE_HOME/config/scripts/init.ora
> sed -i “s/%pga_aggregate_target%/64M/g” $ORACLE_HOME/config/scripts/initXETemp.ora
> sed -i “s/%sga_target%/256M/g” $ORACLE_HOME/config/scripts/initXETemp.ora
> sed -i “s/%pga_aggregate_target%/64M/g” $ORACLE_HOME/config/scripts/init.ora
195c212
< $SU $ORACLE_OWNER -c “$ORACLE_HOME/config/scripts/XE.sh” > /dev/null 2>&1

> $SU $ORACLE_OWNER -c “$ORACLE_HOME/config/scripts/XE.sh” > /tmp/configuring_oraclexe.log 2>&1
205c222
< rm -fr $ORACLE_HOME/config/seeddb

> # rm -fr $ORACLE_HOME/config/seeddb
416,419c433,437
< if [ “$ORACLE_DBENABLED” != “true” ]
< then
< exit 0
< fi

> # if [ “$ORACLE_DBENABLED” != “true” ]
> # then
> # echo “Banco rodando “
> # exit 0
> # fi
486a505
> setKernelParms
489a509
> setKernelParms

Após isso, basta rodar o script de startup, com a opcao
configure onde serao perguntadas algumas coisas, e feita a criacao do
banco de dados.

/etc/rc.d/oracle-xe configure

Após a conclusão desse passo ja deve ser possível acessar o sqlplus e o htmldb (http://localhost:8080/htmldb) com sucesso.

Com as alteracoes que foram feitas no script, pode-se acompanhar o processo de criacao do bd em /tmp/configuring_oraclexe.log.

Para fazer com que o Oracle inicie automaticamente:
echo “/etc/rc.d/oracle-xe start” >> /etc/rc.d/rc.local

Para que ele finalize juntamente com o sistema operacional, é necessário adicionar o treco abaixo no arquivo /etc/rc.d/rc.6, logo acima da linha que se referencia ao apache:
# Stop Oracle Server
if [ -x /etc/rc.d/oracle-xe ]; then
/etc/rc.d/oracle-xe stop
fi

Referências

Link uteis que utilizei como referencia para a instalação:
http://www.oracle.com/technology/software/products/database/xe/files/install.102/b25144/toc.htm
http://www.oracle.com/pls/xe102/homepage
http://universe3.blogspot.com

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s