Este documento descreve o processo de instalação do Oracle® 8.0.5 e Oracle 8.0.5.1 Enterprise Edition para Linux em uma máquina FreeBSD.
Esteja certo de ter instalado o emulators/linux_base e devel/linux_devtools a partir da coleção do ports. Se você passar por dificuldades com estes ports, você pode usar os pacotes ou versões antigas disponíveis na coleção dos ports.
Se você quer executar o ``intelligent agent'', você também precisará instalar o pacote Tcl do RedHat: tcl-8.0.3-20.i386.rpm. O comando geral para instalar pacotes com o port oficial do RPM (archivers/rpm) é:
# rpm -i --ignoreos --root /compat/linux --dbpath /var/lib/rpm pacote
Instalação do pacote não deve gerar erros.
Antes que você possa instalar o Oracle, você precisa configurar um ambiente adequado. Este documento apenas descreve o que fazer especificamente procedimentos para executar o Oracle para Linux no FreeBSD, e não o que está descrito no guia de instalação do Oracle.
Como descrito no guia de instalação do Oracle, você precisa configurar o tamanho máximo da memória compartilhada. Não use o SHMMAX no FreeBSD. SHMMAX é meramente calculado através do SHMMAXPGS e PGSIZE. Sendo assim, defina o SHMMAXPGS. Todas as outras opções podem ser usadas como descritas no guia. Por exemplo:
options SHMMAXPGS=10000 options SHMMNI=100 options SHMSEG=10 options SEMMNS=200 options SEMMNI=70 options SEMMSL=61
Configure estas opções para atender suas necessidades no uso do Oracle.
Também tenha certeza de ter as seguintes opções em seu arquivo de configuração de kernel:
options SYSVSHM #SysV shared memory options SYSVSEM #SysV semaphores options SYSVMSG #SysV interprocess communication
Crie uma conta oracle assim como você criaria qualque outra conta. A conta oracle é especial apenas para possuir um shell Linux. Adicione /compat/linux/bin/bash ao /etc/shells e configure o shell da conta oracle para /compat/linux/bin/bash.
Além das variáveis usuais do Oracle como ORACLE_HOME e ORACLE_SID você deve configurar as seguintes variáveis de ambiente:
Variável | Valor |
---|---|
LD_LIBRARY_PATH | $ORACLE_HOME/lib |
CLASSPATH | $ORACLE_HOME/jdbc/lib/classes111.zip |
PATH | /compat/linux/bin /compat/linux/sbin /compat/linux/usr/bin /compat/linux/usr/sbin /bin /sbin /usr/bin /usr/sbin /usr/local/bin $ORACLE_HOME/bin |
É aconselhável configurar todas as variáveis de ambiente no arquivo .profile. Um exemplo completo seria:
ORACLE_BASE=/oracle; export ORACLE_BASE ORACLE_HOME=/oracle; export ORACLE_HOME LD_LIBRARY_PATH=$ORACLE_HOME/lib export LD_LIBRARY_PATH ORACLE_SID=ORCL; export ORACLE_SID ORACLE_TERM=386x; export ORACLE_TERM CLASSPATH=$ORACLE_HOME/jdbc/lib/classes111.zip export CLASSPATH PATH=/compat/linux/bin:/compat/linux/sbin:/compat/linux/usr/bin PATH=$PATH:/compat/linux/usr/sbin:/bin:/sbin:/usr/bin:/usr/sbin PATH=$PATH:/usr/local/bin:$ORACLE_HOME/bin export PATH
Devido a uma pequena inconsistência no emulador Linux, você precisa criar um diretório com o nome .oracle em /var/tmp antes de inicializar o instalador. Faça com que ele tenha permissão de escrita para todos ou faça com que seu proprietário seja o usuário oracle. Você deve ser capaz de instalar o Oracle sem problemas. Se você tiver problemas, verifique a sua distribuição Oracle e/ou configuração primeiro! Após ter instalado o Oracle, aplique as correções descritas nas próximas duas subseções.
Um problema frequente é que o adaptador do protocolo TCP não é instalado corretamente. Como consequência, você não pode inciar qualquer aplicação de escuta TCP. As seguintes ações ajudam a resolver este problema:
# cd $ORACLE_HOME/network/lib # make -f ins_network.mk ntcontab.o # cd $ORACLE_HOME/lib # ar r libnetwork.a ntcontab.o # cd $ORACLE_HOME/network/lib # make -f ins_network.mk install
Não esqueça de executar o root.sh novamente!
Ao instalar o Oracle, algumas ações, precisam ser efetuadas como root, são gravadas em um shell script root.sh. Este script é escrito no diretório orainst. Aplique a seguinte correção em root.sh, para que ele use o local correto do chown ou alternativamente execute o script em um shell nativo Linux.
*** orainst/root.sh.orig Tue Oct 6 21:57:33 1998 --- orainst/root.sh Mon Dec 28 15:58:53 1998 *************** *** 31,37 **** # This is the default value for CHOWN # It will redefined later in this script for those ports # which have it conditionally defined in ss_install.h ! CHOWN=/bin/chown # # Define variables to be used in this script --- 31,37 ---- # This is the default value for CHOWN # It will redefined later in this script for those ports # which have it conditionally defined in ss_install.h ! CHOWN=/usr/sbin/chown # # Define variables to be used in this script
Quando você não instala o Oracle a partir do CD, você pode corrigir o fonte do root.sh. Seu nome é rthd.sh e está localizado no diretírio orainst na árvore dos fontes.
O script genclntsh é usado para criar uma única biblioteca cliente compartilhada. Ela é usada quando os demos são compilados. Aplique a seguinte correção para comentar a definição do PATH:
*** bin/genclntsh.orig Wed Sep 30 07:37:19 1998 --- bin/genclntsh Tue Dec 22 15:36:49 1998 *************** *** 32,38 **** # # Explicit path to ensure that we're using the correct commands #PATH=/usr/bin:/usr/ccs/bin export PATH ! PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin export PATH # # each product MUST provide a $PRODUCT/admin/shrept.lst --- 32,38 ---- # # Explicit path to ensure that we're using the correct commands #PATH=/usr/bin:/usr/ccs/bin export PATH ! #PATH=/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin export PATH # # each product MUST provide a $PRODUCT/admin/shrept.lst
Ao seguir estas instruções você deve ser capaz de executar o Oracle como se estivesse no Linux.
Este, e outros documentos, podem ser obtidos em ftp://ftp.FreeBSD.org/pub/FreeBSD/doc/.
Para perguntas sobre FreeBSD, leia a documentação antes de contatar <questions@FreeBSD.org>.
Para perguntas sobre esta documentação, envie e-mail para <doc@FreeBSD.org>.