Este artigo é um artigo espelhado de tradução automática, por favor clique aqui para ir para o artigo original.

Vista: 10288|Resposta: 1

Vinculado ao relatório do banco de dados Oracle ORA-12547: TNS: problema de contato perdido

[Copiar link]
Publicado em 23/10/2017 14:51:29 | | | |

Hoje, como a máquina de nó ETL quer acessar um novo servidor de banco de dados, ela precisa configurar o tnsnames.ora e, após a configuração do resultado, um erro é reportado ao se conectar ao banco de dados:
ORA-12547: TNS:lost contact



A princípio, achei que era o tnsnames.ora configurado errado, mas após comparação e verificação, essa possibilidade foi descartada. Porque a mesma configuração em outros hosts foi verificada para se conectar a esse servidor de banco de dados.

Em seguida, pesquisei muitas informações na Internet com base nesse erro "ORA-12547: TNS: lost contact", alguns disseram que havia falta de pacotes de software, e outros disseram que havia um problema com as configurações de permissão do arquivo no host do banco de dados, mas elas não estavam alinhadas com a situação encontrada desta vez.

Depois, decidi olhar os logs, verifiquei o listener.log de log de monitoramento do banco de dados e encontrei as seguintes mensagens de erro nele:
20-MAI-2016 15:46:03 * (CONNECT_DATA=(CID=(PROGRAMA=)(HOST=db01)(USUÁRIO=grade))(COMANDO=status)(ARGUMENTOS=64)(SERVICE=LISTENER)(VERSÃO=186647552)) * status * 0
Conexão recebida de 192.168.24.1 rejeitada
20-MAI-2016 15:46:06 * 12546
TNS-12546: TNS:permission denied
TNS-12560: TNS:protocol adapter error
  TNS-00516: Permissão negada

e verificou a configuração do servidor de banco de dados em sqlnet.ora, e descobriu que isso era porque a restrição de IP de acesso ao banco de dados estava definida, ou seja, apenas o IP especificado podia acessar o banco de dados.

Como é um banco de dados RAC de dois nós, modificar o sqlnet.ora sob o usuário da grade é adicionar o endereço IP do nó ETL à lista branca de IP para acessar o banco de dados.
Após a modificação, reinicie a escuta (recarregamento lsnrctl), caso contrário, um erro ainda será reportado.




Anterior:C# chama código Java (JAR converte em DLL)
Próximo:TNS-12547: TNS:lost contact解决办法
Disclaimer:
Todo software, material de programação ou artigos publicados pela Code Farmer Network são apenas para fins de aprendizado e pesquisa; O conteúdo acima não deve ser usado para fins comerciais ou ilegais, caso contrário, os usuários terão todas as consequências. As informações deste site vêm da Internet, e disputas de direitos autorais não têm nada a ver com este site. Você deve deletar completamente o conteúdo acima do seu computador em até 24 horas após o download. Se você gosta do programa, por favor, apoie um software genuíno, compre o registro e obtenha serviços genuínos melhores. Se houver qualquer infração, por favor, entre em contato conosco por e-mail.

Mail To:help@itsvse.com