Página seguinte Página anterior Índice

3. O installer

3.1 Como?

Geralmente seguir a documentação é uma boa idéia. Não é assim tão ruim e você terá maior suporte da Oracle (se você tiver contrato). (eu acabei estrangando um ambiente -- e sabendo que iria estragar -- seguindo a documentação para Oracle Applications. Foi a única maneira de ter um suporte descente.) Este documento te dará uma visão geral, mas você ainda deve consultar a documentação da Oracle.

3.2 O que eu informo no programa de instalação?

Durante a instalação , o Oracle irá fazer algumas perguntas. Geralmente elas não são tão difíceis mas vamos ver o que responder e porquê.

  1. Muitas pessoas cometem o erro de seguir as instruções da documentação da Oracle e, portanto, falhar no primeiro obstáculo. Não tente executar o runInstaller porque quase sempre falha. Ao invés disso, vá ao diretório install/linux no CD e execute runIns.sh logado como 'oracle'.
  2. Quando aparecer a tela do installer clique em 'Next.'
  3. Deve te pedir para entrar o diretório fonte dos arquivos de instalação (o arquivo 'jar') e o diretório de instalação do Oracle. Não mexa no primeiro. O diretório do Oracle será onde você quiser instalar o software. De acordo com a documentação de instalação deve ser em algo do tipo /u01, mas eu ignorei isso e coloquei em /home/oracle. Geralmente as sugestões da Oracle, nesse caso, valem a pena. Clique 'Next' quando você tiver especificados todos os detalhes.
  4. Agora irá perguntar sobre o grupo DBA. Este o grupo do Unix que você criou na seção anterior, e provavelmente é 'dba'. Entre com os detalhes e clique 'Next.'
  5. Agora você deve se logar como 'root' e execute o arquivo /tmp/OraInstall/orainstRoot.sh. Faça como pedido (você deve rodar pdksh ou bash em 'Bourne compatibility mode' para funcionar perfeitamente). Quando estiver pronto, clique em 'Retry.'
  6. Agora você terá a opção de escolher o que instalar. A melhor escolha é 'Oracle Enterprise Edition', pois inclui tudo (na documentação da Oracle a tabela 3.1 diz exatamente o que é instalado). Tenha certeza que o radio button da direita esteja selecionado e clique 'Next.'
  7. Agora deve permitir que você escolha as opções de instalação bem detalhadas. Ao menos que você não tenha espaço suficiente ou saiba exatamente o que precisa, eu recomendo deixar exatamente como veio e clicar 'Next'. O Universal Installer não deixará você fazer escolhas erradas, portanto não fique muito preocupado se você excluir alguma opção. Você poderá adicionar algo depois sempre.
  8. Para quaisquer produtos que você pediu para instalar, o installer permitirá que você mude o local de instalação. Novamente, mude o local somente se você tiver um bom motivo. Clique em 'Next' quando terminar.
  9. Agora vai instalar tudo que você pediu. Provavelmente vai demorar um pouco e irá usar mais memória do que precisa.
  10. Agora deverá perguntar se você quer criar o banco de dados. Selecione 'no'. Existem doas razões para isso: geralmente não funciona e, mesmo quando isso acontece, é muito lento (parece iniciar outro JVM,deixando o X, o back-end do Oracle e duas maquinas virtuais, não fica bom com 128Mb de memória).
  11. O installer deve perguntar sibre os protocolos de rede que você deseja que o Oracle suporte. Sempre aparece tudo em branco para mim. Eu não sei o que deveria aparecer ali, mas eu cliquei 'Next' e parece que tudo funcionou bem.
  12. Todo o trabalho duro está feito. Todos os produtos que você queria devem estar instalados e prontos para usar. Parabéns.

3.3 Instalando o patch

Infelizmente o CD que a Oracle te enviu foi provavelmente a versão 8.1.5.0.0. Assim como a maioria das primeiras versões , essa versão tem problemas ( que incluem arquivos vazios, portanto são problemas sérios)e tem patch para a versão 8.1.5.0.2, que é fundamental. Você certamente vai precisar consultar a seção "Configuração" desse HOWTO. O patch descrito aqui é um patch acumulativo, isto é, ele inclui todos os arquivos para mudar da versão 8.1.5.0.0 para a 8.1.5.0.2.

O arquivo que você precisa está no site site da Oracle e é relativamente fácil de instalar.

  1. Este provavelmente é o primeiro de vários patches, então crie um diretório chamado "patches" em algum lugar conveniente (o meu está em $ORACLE_HOME).
  2. Baixe o arquivo nele.
  3. Crie um lugar para colocar os arquivos:
    mkdir /tmp/orapatch
    cd /tmp/orapatch
    
  4. Descompacte o arquivo:
    tar zvxf $ORACLE_HOME/patches/linux815patches.tgz
    
  5. Rode o script que está agora no diretório corrente:
    ./linux_815patches.sh
    

Note que é importante não descompactar o arquivo que no diretório corrente. O installer do patch verifica que o numero correto de arquivos presentes e não roda se não for o número correto. É claro que se ele achar o próprio arquivo do patch compactado ele vai encontrar arquivos demais!

3.4 Configurando o seu ambiente

Adicione as seguintes linhas ao seu ".profile" (ou equivalente no seu shell):

. oraenv
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib

Porque o installer da Oracle não faz isso eu não faço a menor idéia.

Se você ver "[: integer expression expected before -lt" da próxima vez que você se logar, é porque o 'oraenv' está esperando a sua variável ULIMIT ser um valor inteiro ao invés do valor default 'unlimited'. Eu não tenho visto problema algum em ignorar esse erro, mas você pode arrumá-lo simplesmente atribuindo a ULIMIT algum valor finito.

3.5 Perguntas e respostas de instalação

O installer sai com a mensagem 'CreateOUIProcess()'

Em primeiro lugar, certifique-se que você está rodando a versão correta do JVM. Eu não sei o que a Oracle faz com o software dela, mas é depende muito da versão que você usa.

Em segundo lugar, pode ser útil se, ao invés de rodar runInstaller da raiz do CD, você pode ir para install/linux e rodar o script runInst.sh .

Este porblema é bem mais comum no RedHat 6.1 que no 6.0, e pode ser algo relacionado com alguma biblioteca C nova.

Eu tenho ouvido falar que se você tem a versão errada do window manager mais comum do GNOME, o Enlightenment, pode ocorrer esse problema. Atualize ou mude para outro ambiente como o KDE ou o Fvwm2.

O installer aparece na tela como um flash e logo em seguida desaparece

Isto não é tão incomum. Geralmente significa que você está rodando uma versão antiga do Enlightment. Atualizando ou trocando para outro ambiente deve resolver o problema.

Um problema semelhante é o installer sumir em certo ponto do processo, geralmente entre os 80%. Acredita-se que isso ocorra por falta de memória. Você deve aumentar o tamanho do swap da sua maquina, qualquer coisa além de 200Mb deve ser suficiente.

Acontecem estranhos erros de Java quando eu inicio o installer

Qual versão do JVM você está usando? Muita gente diz que funciona com outras versões, mas eu quando eu baixei pro JRE 1.1.6 (que a documentação da Oracle recomenda) a maioria dos problemas acabaram.

Duas outras coisasa que valem a pena mencionar: certifique-se que você está usando o JRE e não o JDK.Em segundo lugar, você deve estar usando "green" threads. Ao menos que você configure a variável THREADS_FLAG igual a 'native' você certamente tem a configuração correta.

O installer mostra 'segmentation fault'

Você tem GLIBC 2.1, não é mesmo?

Problemas no carregamento de bibliotecas compartilhadas

A mensagem de erro que eu estou falando parece um pouco com essa:

error in loading shared libraries: libclntsh.so.8.0: cannot open
shared object file: No such file or directory

É a mesma coisa que o NT reclamando que não acha uma DLL. É bem fácil de arrumar. Simplesmente adicione a seguinte linha ao final do seu arquivo ".profile" se você estiver usando uma Bourne shell (pergunte ao seu guru local se você não sabe):

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib

Ou use o seguinte linha se você está usando uma CSH shell:

setenv LD_LIBRARY_PATH "$LD_LIBRARY_PATH
$ORACLE_HOME/lib"

Eu não uso a C-Shell, portanto a verificação desse comando fica a seu critério.

O Pro*C não funciona

A resposta para essa pergunta deu um bom trabalho, pesar da resposta estar no website da Oracle se você procurar o bastante.

A configuração default do Pro*C não sabe onde encontrar todas as suas bibliotecas, logo você precisa dizer onde elas estão. Depois da instalação, o arquivo $ORACLE_HOME/precomp/admin/pcscfg.cfg está vazio, mas precisa conter o seguinte:

sys_include=(/home/oracle/precomp/public, /usr/include,
/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include/,
/usr/include, /usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include,
/usr/include)
include=(/home/oracle/precomp/public) 
include=(/home/oracle/rdbms/demo) 
include=(/home/oracle/network/public) 
include=(/home/oracle/plsql/public)
ltype=short

(As primeiras quatro linhas acima , do sys_include ao include) devem ser todas na mesma linha dentro do arquivo.)

A documentação da Oracle não menciona isso, mas você também precisa editar o arquivo $ORACLE_HOME/precomp/lib/env_precomp.mk. Na linha que define o CCPSYSINCLUDE, coloque o seguinte:

CCPSYSINCLUDE=sys_include='($(ORACLE_HOME)/precomp/public,
/usr/lib/gcc-lib/i386-redhat-linux/egcs-2.91.66/include,
/usr/include/g++-2, /usr/include)'

Isso funcionou para o RedHat 6.0, mas precisa arrumar mais para outras distribuições ou versões mais recentes do RH.

Eu instalei o patch mas agora piorou!

Isto é complicado e quase não documentado pela Oracle e é bem comum em todos os seus produtos e installers.Já é hora deles fazerem algo a respeito!

Geralmente o que acontece: você instala o Oracle Enterprise Edition e, como a Oracle te falou, você baixa e instala todos os patches existentes. Então você decide usar os pré-compiladores e instalar o Oracle Programmer do mesmo CD.

Antes de instalar o Pro*C o seu banco funcionava e agora não funciona mais.

O problema é que as versões dos pré-compiladores que você instalou não está com patch aplicado e alguns programas do Oracle estão ligados às correções; o installer da Oracle é tão burro que sobrepõe novas versões do mesmo código.

A solução não é simples. Uma vez que você não pode extrair um único arquivo do CD, você precisa instalar tudo novamente, dessa vez instale o Oracle Programmer antes de instalar o patch.

O Oracle acha que eu não tenho espaço livre suficiente no disco

Existe algo errado com o programa de instalação.Assumindo que você tenha espaço livre suficiente, vai instalar sem problemas.


Página seguinte Página anterior Índice