Como soluciono o erro “javasqlSQLException: No more data to read from socket” (Não há mais dados para ler do soquete) quando estou tentando me conectar à minha instância do Amazon RDS for Oracle?

3 minuto de leitura
0

Recebo o erro “javasqlSQLException: No more data to read from socket” (Não há mais dados para ler do soquete) quando tento me conectar à minha instância de banco de dados do Amazon Relational Database Service (Amazon RDS) for Oracle.

Resolução

Você recebe o erro “javasqlSQLException: Não há mais dados para ler do soquete” (Não há mais dados para ler do soquete) devido a um problema de conectividade entre o servidor Oracle e o driver JDBC do cliente. Os motivos mais comuns e as opções de solução de problemas para essas falhas de conexão são os seguintes:

  • A conexão é encerrada abruptamente devido a interrupções de rede: para solucionar esse problema, verifique o arquivo alert.log da instância quanto a erros de tempo limite do TNS publicados durante o tempo em que a conexão expirou do final da aplicação. Para obter mais informações, consulte a documentação da Oracle para erros de tempo limite do TNS. Para obter mais informações sobre como acessar o log de alertas para instâncias do RDS, consulteArquivos de log do banco de dados Oracle.
  • A conexão é encerrada devido a erros do Oracle no lado do servidor: verifique se há erros ORA-0600 ou ORA-07445 no arquivo alert.log. Colete o despejo de rastreamento para erros específicos do Oracle. Verifique se esses erros têm uma correção conhecida fornecida pelo suporte da Oracle.
  • A conexão cliente-servidor não está ativa: para solucionar esse problema, defina o parâmetro SQLNET.EXPIRE_TIME como um intervalo especificado, em minutos, para enviar um teste que verifica se as conexões cliente-servidor estão ativas. Para obter mais informações, consulte a documentação da Oracle para SQLNET. EXPIRE_TIME.
  • A instância do RDS for Oracle não está disponível ou foi reiniciada quando o cliente JDBC estava tentando usar uma conexão existente com o servidor Oracle: para solucionar esse problema, recupere eventos para a instância do RDS e verifique se a instância foi reiniciada ou parada quando as conexões foram estabelecidas a partir do cliente JDBC.
  • Os drivers JDBC usados para se conectar ao RDS for Oracle Instance são incompatíveis: para solucionar esse problema, confirme se a versão do driver JDBC é compatível com a da instância de banco de dados. Para obter a lista de drivers JDBC compatíveis, consulte a documentação da Oracle para a Matriz de compatibilidade para máquinas Java e drivers JDBC usados com ODI. Se o driver JDBC for incompatível, baixe o arquivo JAR mais recente no seu código-fonte. Em seguida, inclua esse arquivo no caminho de classe ao compilar a classe que cria conexões com o banco de dados. Para obter mais informações, consulte Baixar o driver JDBC.
  • Os componentes de memória no lado do cliente causam tempos limite: para solucionar esse problema, verifique se o Oracle Data Integrator tem componentes de memória no lado do cliente que causam tempos limite indesejados. Certifique-se de definir os valores corretos para esses componentes no lado do cliente. Para obter mais informações, consulte a documentação da Oracle para Como definir opções Java (como os limites do heap de memória, a localização de bibliotecas não-Java, etc.) no ODI.

Informações relacionadas

Documentação da Oracle para Um erro “No More Data to Read From Socket” (Não há mais dados para ler do soquete) foi sinalizada a partir de uma interface de integração ODI

AWS OFICIAL
AWS OFICIALAtualizada há 2 anos