Oracle XE 11.2 no Slackware 14.0 64 bits - Instalação e configuração

Aqui veremos como instalar a versão Express (XE) do banco de dados Oracle em um Slackware 14.0 64 bits. Lembrando que este tutorial aborda uma instalação em desktops, apenas para fins de estudo.

[ Hits: 22.510 ]

Por: Leandro Nkz em 01/07/2013 | Blog: http://brweatherproject.blogspot.com/


Instalação



Antes de instalar, cheque estas dependências básicas do Oracle:
  • glibc >= 2.3.4
  • libaio >= 0.3.104
  • make >= 3.80
  • binutils >= 2.16.91.0.5
  • gcc >= 4.1.2

Se o seu Slackware foi instalado no modo full (todos os pacotes), é praticamente certo que você já tenha todos estes pacotes instalados.

Primeiro, baixe o Oracle XE 11g R2 aqui:

Aceite a licença de uso e selecione a opção: "Oracle Database Express Edition 11g Release 2 for Linux x64". Ao clicar, você será redirecionado à tela de login do site. Se você já tem uma conta, basta inserir os seus dados que o download começará, se não, basta fazer um pequeno cadastro (é grátis =)).

Com o arquivo ZIP de 315 MB em mãos, vamos à configuração do pacote.

Aqui temos uma novidade: SlackBuilds!

Sim! Agora você pode instalar o Oracle XE com um autêntico pacote tgz.

Há um SlackBuild do Oracle XE desenvolvido por Andrew Clemons que está disponível no GitHub:

Baixe os cinco arquivos disponíveis e salve-os em uma pasta (aqui chamei-a de "oracle-xe-11g").

Agora, vamos mover o arquivo ZIP do Oracle para dentro da pasta do SlackBuilds (criada anteriormente):

Obs.: lembrando que, a partir daqui, você pode optar por usar o seu usuário normal. Você não precisa estar necessariamente logado como usuário oracle para realizar a instalação.

mv oracle-xe-11.2.0-1.0.x86_64.rpm.zip oracle-xe-11g/

Por fim, entre na pasta do SlackBuilds, logue-se como root e execute o script:

cd oracle-xe-11g/
$ su

# chmod +x oracle-xe-11g.SlackBuild
# ./oracle-xe-11g.SlackBuild


Se tudo der certo, instale o pacote criado:

# upgradepkg --install-new /tmp/oracle-xe-11g-11.2.0-x86_64-1_acl.tgz

Pronto! O Oracle já está instalado.

Agora, para que as variáveis de ambiente façam efeito, e para que o Slackware possa atualizar alguns caches/libs do sistema, vamos reiniciar:

# reboot

Ajustes

OK. Sistema reiniciado. Antes de configurar, vamos editar dois arquivos:

Edite o arquivo: /u01/app/oracle/product/11.2.0/xe/network/admin/listener.ora:

Aqui, ele está assim:

# listener.ora Network Configuration File:

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /u01/app/oracle/product/11.2.0/xe)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
      (ADDRESS = (PROTOCOL = TCP)(HOST = %hostname%)(PORT = %port%))
    )
  )

DEFAULT_SERVICE_LISTENER = (XE)

Deixei ele assim:

# listener.ora Network Configuration File:

SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = /u01/app/oracle/product/11.2.0/xe)
      (PROGRAM = extproc)
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXT_XE))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = %port%))
    )
  )

DEFAULT_SERVICE_LISTENER = (XE)

Eu basicamente alterei a variável HOST de %hostname% para localhost e a variável KEY = EXTPROC_FOR_XE para KEY = EXT_XE.

E, depois, edite este outro arquivo: /u01/app/oracle/product/11.2.0/xe/network/admin/tnsnames.ora:

Aqui, ele está assim:

# tnsnames.ora Network Configuration File:

XE =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = %hostname%)(PORT = %port%))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = XE)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

Eu o deixei assim:

# tnsnames.ora Network Configuration File:

XE =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = %port%))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = XE)
    )
  )

EXTPROC_CONNECTION_DATA =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXT_XE))
    )
    (CONNECT_DATA =
      (SID = PLSExtProc)
      (PRESENTATION = RO)
    )
  )

Novamente, apenas alterei as variáveis HOST e KEY.

Esta configuração corrige um erro de inicialização do listener (antes mesmo dele aparecer, rs). Sem ele, o seu banco ficaria inacessível externamente (incluindo o acesso via aplicações).

Assim, se você checar a instância (mesmo com ela executando), apareceria o seguinte erro:
Estabelecendo conexão com (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC_FOR_XE)))
TNS-12541: TNS:não há listener
TNS-12560: TNS:erro de adaptador de protocolo
  TNS-00511: Não há listener
   Linux Error: 111: Connection refused
Estabelecendo conexão com (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Slackware..)(PORT=1521)))
TNS-12541: TNS:não há listener
TNS-12560: TNS:erro de adaptador de protocolo
  TNS-00511: Não há listener
   Linux Error: 111: Connection refused
Página anterior     Próxima página

Páginas do artigo
   1. Introdução e requisitos
   2. Instalação
   3. Configuração e testes
   4. Dicas avulsas e conclusão
Outros artigos deste autor

Ativando zRAM no Slackware

Trazendo toda a usabilidade do GNOME 2 para o GNOME 3 do Ubuntu 11.10

Saiba porque o Linux pode (ainda) estar diminuindo a vida útil do HD do seu notebook

Instalação e configuração básica de um Debian 6 Squeeze para Desktops

Uma alternativa ao ConkyForecast: O BrWeather

Leitura recomendada

Memórias Database Oracle (SGA x PGA) - Entenda a diferença e como calcular a HugePages

Instalação database Oracle 11G x86 e 64 no Ubuntu 10.10 Server

Processo de replicação de SCHEMA no Oracle

Instalação do Oracle Database 10g R2 no Debian Etch 4

Configurando uma instância do Oracle para acesso via Python

  
Comentários
[1] Comentário enviado por willian.firmino em 02/07/2013 - 13:24h

excelente, muito bom parabéns

[2] Comentário enviado por leandro em 02/07/2013 - 15:04h

Thanks!

[3] Comentário enviado por romulogcerqueira em 09/07/2013 - 17:39h

Pessoal, boa tarde.

Estou tentando configurar o Oracle Database XE no Red Hat 5. Fiz todas as indicações acima e, quando tento conectar remotamente no banco, me deparo com o problema ORA-12545: Connect failed because target host or object does not exist. Alguém pode me ajudar?

Meu listener.ora:


SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /u01/app/oracle/product/11.2.0/xe)
(PROGRAM = extproc)
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXT_XE))
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
)
)

DEFAULT_SERVICE_LISTENER = (XE)


Meu tnsnames.ora:

# tnsnames.ora Network Configuration File:

XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXT_XE))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)



[4] Comentário enviado por leandro em 10/07/2013 - 19:50h

Olá, Rômulo.

Os passos do artigo foram testados apenas no Slackware. Pode ser que no Red Hat haja alguma outra configuração necessária.

Em todo caso, tente iniciar o listener manualmente (como usuário oracle):

$ lsnrctl

Dentro dele, execute:

LSNRCTL> status

Para saber o status da conexão.

Se não estiver ativa, tente ativá-la:

LSNRCTL> start

Se der erro, retorne o resultado aqui.
Abraço e boa sorte!

[5] Comentário enviado por danilobolzan em 02/11/2014 - 17:38h

estou iniciando minha vida no Slackware, e por conta de um trabalho de Facul preciso instalar o oracle no sistema.
fiz os passos deste tutorial por varias vezes e,
# /etc/init.d/oracle-xe configure
aqui da erro "no such file or directory"
não consigo resolver, se alguem puder me ajudar.
PS: o Slack está instalado em uma VM

[6] Comentário enviado por femars em 29/01/2015 - 20:10h

Cara, tive o "trabalho" de lembrar a senha e me logar no site, apenas para parabenizar o seu artigo, ficou muito bom, e tb dizer que funciona perfeitamente tb no slackware 14.1 64b. :)

femars.

[7] Comentário enviado por leandro em 30/01/2015 - 19:30h

Obrigado! =)


[8] Comentário enviado por pherde em 29/09/2016 - 23:49h

Parabéns! 3 anos depois e o tutorial funciona perfeitamente!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts