FAQs - Suporte técnico

RM - BD - Erro "CannotConnect ao utilizar Direct mode (Oracle)"

Ocorrência

A partir da versão 12.1.18 os produtos da linha RM passarão a utilizar o direct mode do provider de conexão utilizado para bases de dados Oracle.

Com este cenário o erro abaixo poderá ocorrer devido a configuração do alias de conexão a base de dados:

O direct mode implementa a conexão da aplicação RM sem a necessidade de utilizar dll's, provider ou outros artefatos de terceiros para conexão a base Oracle. Antes da implementação, utilizávamos a oracle call interface (OCI) para conexão ao banco de dados Oracle.  

Atenção: O client do Oracle continua sendo necessário para acesso aos executáveis Delphi que ainda utilizam o BDE (Borland Database Engine) para conexão com o banco.

 


Causa
Embora seja uma melhoria no funcionamento da aplicação,  esta configuração poderá provocar o erro acima nos seguintes cenários:

  • Utilização de conexão via tnsnames do client Oracle
  • Utilização de servidor de banco de dados Oracle RAC 

A mudança implementada no RM foi habilitada através de tags no arquivo de configuração do rm.host (RM.Host.Service.exe.config , RM.Host.exe.config e RM.Host.JobRunner.exe.config), sendo esta tag oculta no config padrão da instalação e definida como true.

<add key="USEDEVARTDIRECT" value="true" />

Esta configuração ocasionará o erro nos casos em que a forma de conexão ao oracle não for direta, exemplo (host/sid) ou nos casos em que o servidor Oracle esteja em RAC (Real Application Cluster).

 


Ambiente
A partir da release 12.1.18

 

Solução
Para solução do problema os seguintes passos poderão ser seguidos

  1. Caso não utilize Oracle RAC 

Recomendamos aos clientes que não utilizam Oracle RAC que mantenham a configuração do direct mode como true, pois além dos ganhos relativos a instalação, manutenção e adminsitração de clients Oracle nas máquinas em que o produto TOTVS está instalado, teremos outros ganhos em potencial, uma vez que neste modelo a aplicação trabalhará diretamente com o Oracle através do protocolo TCP/IP,sem o envolvimento do client do Oracle.
Para a não ocorrência do erro acima você deverá realizar o seguinte procedimento.
No alias manager informar a conexão direta ao banco de dados ao qual deseja se conectar. Para isso, você deverá informar o nome ou ip do host onde o banco de dados se encontra instalado "/" (barra) o SID "Service Identifier do Oracle", que é o nome do serviço Oracle.
Exs: 

10.31.0.159/orcl 
serverbd/orcl

Ex:

Obs.: Caso não utilize a porta padrão 1521, será necessário informá-la, conforme exemplo: BHD050101104:1527/exemplo12116

 

2-Caso utilize Oracle RAC

O modo direct não é compatível com o Oracle RAC. Sendo assim, clientes que utilizam o Oracle RAC poderão no momento da instalação do RM marcar o flag "utilização do Oracle RAC" que automáticamente irá setar a tag USEDEVARTDIRECT para false conforme imagem abaixo.

 

Ex:


Caso não tenha marcado a opção durante a instalação, basta incluir a tag abaixo nos arquivos de configuração  (RM.Host.Service.exe.config , RM.Host.exe.config e RM.Host.JobRunner.exe.config conforme abaixo:

<add key="USEDEVARTDIRECT" value="false" />

 

Para verificar se a instancia é ou não Oracle RAC, você poderá executar a seguinte consulta:

select name, value from v$parameter where name='cluster_database';

Caso o campo VALUE retorne TRUE a instancia é Oracle RAC.

 

Esse artigo foi útil?
Usuários que acharam isso útil: 0 de 0

0 Comentários

Por favor, entre para comentar.
X Fechar

Olá ,

Há pendência referente a um de seus produtos contratados.

Entre em contato com o Centro de Serviços TOTVS para tratativa.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cobrança – Verificação de pendências financeiras . clique aqui.

TOTVS

X Fechar

Olá ,

Seu contato não está cadastrado no Portal do Cliente como um perfil autorizado a solicitar consultoria telefônica.

Por gentileza, acione o administrador do Portal de sua empresa para: (1)configurar o seu acesso ou (2)buscar um perfil autorizado para registro desse atendimento.

Em caso de dúvidas sobre a identificação do contato administrador do Portal, ligue (11) 4003-0015, opção 7 e, em seguida, opção 4 para buscar o suporte com o time de Assessoria ao Portal do Cliente. . clique aqui.

TOTVS

X Fechar

Olá ,

Para o atendimento de "Consultoria Telefônica" você deverá estar de acordo com o Faturamento.

TOTVS

X Fechar

Olá,

Algo inesperado ocorreu, e o usuario nao foi reconhecido ou você nao se encontra logado

Por favor realize um novo login

Em caso de dúvidas, entre em contato com o administrador do Portal de Clientes de sua empresa para verificação do seu usuário, ou Centro de Serviços TOTVS.

Ligue! 4003-0015 opção 4 e 9 ou registre uma solicitação para CST – Cadastros . clique aqui.

TOTVS

Chat _

Preencha os campos abaixo para iniciar o atendimento:

Chat _