Pular para o conteúdo
  • Este tópico contém 3 respostas, 2 vozes e foi atualizado pela última vez 6 anos, 11 meses atrás por Avatar photoJosé Laurindo Chiappa.
Visualizando 4 posts - 1 até 4 (de 4 do total)
  • Autor
    Posts
  • #109123
    Marcos A Pellegrini
    Participante

      Fiz um DBLINK para mysql , mas no select, update , insert o Oracle não está acessado todos os campos da tabela MYSQL, alguém já teve esse problema?
      obrigado.

      #109125
      Avatar photoJosé Laurindo Chiappa
      Moderador

        Vamos por partes : primeiro, entendo que (como o Oracle até onde sei não tem conexão direta) vc instalou um conector ODBC e setou o acesso via heterogeneous Services mais ou menos cfrme http://www.fabioprado.net/2013/12/criando-database-link-para-acessar.html mostra, certo ?? Depois de ter feito isto, vc ** TESTOU ** a conexão via rede a partir do servidor Oracle até o servidor do mysql ? Se isso tava ok, vc consegiu conectar no banco mysql através de um programa-cliente ODBC qualquer que esteja instalado no servidor Oracle ?? No artigo o Autor usou o isql mas trocentos existem…

        SE tudo o que falei acima estiver ok e testado com sucesso, PROVAVELMENTE ou o usuário do mysql que vc usa pra conectar não tem as permissões completas necessárias ou vc não deve estar colocando entre aspas duplas o nome da tabela, que nem o Autor disse :

        select * from “tabela”@mysql_orcl_db;

        E notar que iirc o mysql é case-sensitive, então tranquilamente Pode Ser que além de colocar entre aspas duplas vc TENHA que respeitar maiusc/minusculas …

        []s

        Chiappa

        #109131
        Marcos A Pellegrini
        Participante

          Fiz tudo conforme o artigo do Autor e ODBC está funcionando, mas quando faço select direto no mysql usando o mysql Workbench eu vejo todas a colunas da tabela loja e quando faço select usando o DBLINK no ORACLE no Sqltools não vem todos os campos.
          Veja arquivos em anexo.
          Grato por sua ajuda,

          #109132
          Avatar photoJosé Laurindo Chiappa
          Moderador

            Nem adianta querer anexar nada aqui que ningupem vai ver, o Forum não permite anexos – sobe pra algum site de Compartilhamento qquer imagem que queira e nos dê o link…
            E REPITO : vc TESTOU COM SUCESSO a conexão ODBC a partir do servidor Oracle até o servidor mysql ?? Usando esse mesmo usuário e senha e o MESMO DSN/dados de INIT ODBC que vc indicou na config do HS ? Isso é CRÍTICO, é esse teste que vai indicar que a conexão odbc é possível e não tem falhas…
            Se sim, como eu perguntei, no SELECT em si vc está usando as aspas duplas E respeitando maiúsculas/minúsculas se for o caso ? Outra coisa, os DADATYPES são conversíveis ? Pois quando vc faz um banco ler o outro NEM TODOS os datatypes vão ser reconhecíveis…

            Minha sugestão : conecte no mysql com esse mesmo exato usuário que vc conecta via dblink, cria nele uma tabela T1, bem simples, com uma coluna c1 number e c2 CHAR(40) , faz uns poucs INSERTs nela e comita… Isso feito vc conecta no Oracle e manda :

            select * from “T1″@nomedodatabaselink;

            E veja o que acontece… SE esse teste simples funcionar, aí vc vai ter que ver qual é o prob nessa tabela em questão…

            []s

            Chiappa

            OBS :

            1. atenção FORTE para os parâmetros de config do HS, em especial os de NLS como o HS_LANGUAGE, os de VERSÃO DO DRIVER ODBC, como o HS_FDS_SHAREABLE_NAME, os paths aonde vc indica que estarão os .INI… Não é incomum setting inválido/impróprio dar erro tipo nas colunas caracter que possam ter acentos, ou coisas assim

            2. re-cheque os detalhes todos do odbcinst.ini

            3. tente fazer seus testes direto no sqlplus do servidor Oracle, além de outras tools que esteja usando

          Visualizando 4 posts - 1 até 4 (de 4 do total)
          • Você deve fazer login para responder a este tópico.
          plugins premium WordPress