Falha ao iniciar o Listener em qualquer porta do Linux

Introdução

A princípio a mensagem de erro informando que a porta selecionada na configuração do Listener já está sendo utilizada por outro software é muito comum. O caso mais comum é quando o servidor em questão já tem um Listener em execução (configurado na porta 1521, por exemplo) e tentamos adicionar um novo Listener utilizando a mesma porta.

A solução para esse impasse é óbvia e simples: Alterar a porta do novo Listener que está sendo criado. O problema abordado aqui é quando o Net Configuration Assistant (NETCA) informa que todas as portas que você tenta utilizar já está sendo utilizada por outro software no momento.

Investigação

Após verificar que não tinha nenhum outro Listener executando no servidor, o primeiro passo foi verificar no Linux qual o processo estaria ocupando a porta 1521.

$ sudo netstat -tlpn | grep 1521

Nada retornado pelo comando netstat. Isso significa que nenhum processo está usando a porta 1521. Uma saída normal para uma porta que está sendo utilizada é demonstrada abaixo usando a porta 22 como exemplo.

Até aqui foi confirmado que a porta não está sendo utilizada por outro software. O passo seguinte foi procurar por uma documentação no suporte da Oracle que apresentasse possíveis causas para esse problema.

Rapidamente encontrei uma nota técnica com o seguinte título:

Netca Fails with Use another port number. Even port is NOT in use. (Doc ID 2468961.1)

O problema era o endereço de IP configurado no arquivo /etc/hosts no Linux diferente o IP real do servidor. Isso ocorreu pelo fato de o servidor ser virtual e o mesmo ter sido clonado de outra VM com novas configurações de hostname e IP. Contudo, o IP em /etc/hosts não foi ajustado corretamente.

$ cat /etc/hosts

Observe que o IP configurado no arquivo é 192.168.1.13, mas o ip retornado pelo comando ifconfig a seguir é 192.168.1.54:

Solução

Para solucionar o problema, basta alterar o IP em /etc/hosts para o mesmo IP retornado pelo ifconfig e reiniciar o serviço de rede do Linux.

$ sudo sed -i "s,192.168.1.13,192.168.1.54,g" /etc/hosts
$ sudo service network restart

Após ajuste no Linux, o Listener foi configurado com sucesso na porta 1521.

$ netca -silent -responseFile $ORACLE_HOME/assistants/netca/netca.rsp -instype typical

3 thoughts on “Falha ao iniciar o Listener em qualquer porta do Linux”

  1. Olá Maicon

    Estou fazendo a instalação do Oracle 21c em minha VM usando o Oracle Linux 8, e na configuração do Listener me deparei com este erro descrito no seu artigo. Em qualquer porta que tendo configurar a mensagem é a mesma. Confirmei que a porta não estava sendo utilizada por outro software. Porém verifiquei no meu arquivo /etc/hosts o endereço IP é o mesmo definido no servidor.

    Você teria ideia de uma possível causa para este erro?

    Obrigado e parabéns pelo artigo.

    Carlos da Mata

    1. Olá Carlos, obrigado pelo comentário !
      A entrada no /etc/hosts tem o short name e fully qualified name do servidor apontando para o mesmo IP?
      A entrada corresponde com o resultado do comando “hostname” ?
      Olha no log do NETCA se tem algum erro anterior a este, ou se tem alguma informação adicional sobre a causa do erro.

      1. Oi Maicon, primeiramente muito obrigado pelo retorno. Acabei descobrindo que o problema estava sendo ocasionado pelo fato de, ao reiniciar o servidor após as configurações iniciais do Oracle, o sistema não carregou as variáveis definidas no .bash_profile do usuário /home/oracle. Após resolver este problema refiz a configuração do Linester e o problema foi resolvido. Mas obrigado pelas dicas! Abraço.

Leave a Comment

Scroll to Top

Discover more from Blog do Dibiei

Subscribe now to keep reading and get access to the full archive.

Continue reading