Ir para conteúdo
  • Cadastre-se

dev botao

dev botao

  • Este tópico foi criado há 2675 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

Postado

Prezados, bom dia!

Recebi um contato esta semana de um cliente que quer modernizar o software dele. O que ocorre é o seguinte, ele tem um sistema muito antigo, desenvolvido em DELPHI com banco de dados InterBase (arquivo extensão GBD).

Ele tem um servidor local linux onde este banco fica hospedado e para fazer o acesso, ele utiliza a ferramenta IBExpert. 

Fiz toda a instalação do InterBase, IBExpert, porém quando eu tento fazer a conexão com o banco de dados do meu cliente, ocorre um erro dizendo que o banco de dados não é valido (irei inserir a foto do erro junto á este tópico).

 

Alguem já enfrentou algum problema similar? Se sim, sabe como resolver?

Grato por enquanto.

 

Att,

Fernando.

ErrorInterBase.PNG

Postado
  Em 07/03/2018 at 12:35, Juliomar Marchetti disse:

então o caminho que está informando não condiz

tu tem que pegar o caminho do linux se é que entendi ele está com o sistema no linux.

 

Expandir  

Olá Julio, grato pela sua resposta.

Esta base de dados que eu trouxe esta na minha empresa. O sistema que o meu cliente usa, não fomos nós que desenvolvemos, o cliente disponibilizou a base de dados dele para nós para que pudessemos fazer a importação dos dados para o sistema que nós estamos desenvolvendo para ele, ou seja, essa base de dados não esta na rede dele, esta na rede da nossa empresa. A "unica" coisa que precisamos é conseguir acessar essa base de dados para exportar os dados das tabelas e importar para o novo sistema.

Postado
  Em 07/03/2018 at 13:25, Juliomar Marchetti disse:

Certo então é outra coisa

a versão que tu instalou do firebird não corresponde ao do FDB

Expandir  

Consegui configurar via ODBC, pois preciso abrir este banco via excel, porém, ainda estou tendo o erro de que o banco de dados não é valido (desta vez pelo Excel).

Referente á versão do Firebird, eu tenho exatamente a mesma versão instalada que a do meu cliente.

Obrigado pela resposta, Juliomar!

Postado

Bom dia.

Amigo, pelo que entendi o sistema antigo usa Interbase, então vc deve pegar o backup do banco, arquivo GBK, levar pra sua máquina e restaurar, olhando a imagem vc copiou o GDB direto.

O problema é que não sei se o backup do interbase (imagino que seja o 6) restaura sem erros no firebird 2.5/superior, talvez se vc instalar em uma virtual um firebird 1.5 e restaurar esse GBK dai depois subir pra sua versão do firebird atual.

Londrina - PR

Postado
  Em 08/03/2018 at 11:40, armando.boza disse:

Bom dia.

Amigo, pelo que entendi o sistema antigo usa Interbase, então vc deve pegar o backup do banco, arquivo GBK, levar pra sua máquina e restaurar, olhando a imagem vc copiou o GDB direto.

O problema é que não sei se o backup do interbase (imagino que seja o 6) restaura sem erros no firebird 2.5/superior, talvez se vc instalar em uma virtual um firebird 1.5 e restaurar esse GBK dai depois subir pra sua versão do firebird atual.

Expandir  

Bom dia Armando, obrigado pela sua resposta!

Então, andei procurando na internet e vi que o arquivo que deve ser restaurado é o .GBK, agora estou tentando entrar em contato com o meu cliente para que eu possa tentar gerar o GBK. Ele armazena esse banco em um computador linux (não sei qual distro/versão) e quando precisa acessar o banco, ele acessa via IBExpert. Vou ver se consigo acessar o PC do meu cliente para tentar gerar um backup.

Novamente, grato pela sua resposta!

Postado
  Em 08/03/2018 at 12:37, milaneznando disse:

Bom dia Armando, obrigado pela sua resposta!

Então, andei procurando na internet e vi que o arquivo que deve ser restaurado é o .GBK, agora estou tentando entrar em contato com o meu cliente para que eu possa tentar gerar o GBK. Ele armazena esse banco em um computador linux (não sei qual distro/versão) e quando precisa acessar o banco, ele acessa via IBExpert. Vou ver se consigo acessar o PC do meu cliente para tentar gerar um backup.

Novamente, grato pela sua resposta!

Expandir  

Quando vc abrir o ibexpert e gerar o backup fique atento ao path de saída do arquivo, pois no linux é "/" (barra normal) ex: /home/user/banco

Londrina - PR

Postado

Pessoal, estou postando mais duas imagens... 

Depois de muito tempo procurando uma solução para fazer com que o erro citado acima pudesse ser resolvido, descbri que ao configurar o meu banco de dados, eu deveria colocar a conexão Remote/TCP, com o meu ip no servername.

Agora, ao tentar a conexão, o erro é outro... Poderiam me dar mais algumas dicas?

 

Att,

Fernando.

Print1.PNG

Print2.PNG

Postado
  Em 08/03/2018 at 18:50, armando.boza disse:

Mas o banco de dados não está em servidor linux?

Expandir  

Olá, Armando!

O banco esta em servidor linux na empresa do meu cliente.

Eu trouxe o arquivo GDB para minha empresa e estou tentando acessar do meu computador para que eu possa visualizar as tabelas, porem, quando tento fazer a conexão, os mensagens acima mostradas nas imagens são apresentadas.

  • Moderadores
Postado

A primeira coisa é descobrir se o servidor de produção é Interbase ou Firebird e qual a versão. A extensão indica que é Interbase, mas não necessariamente.

Você pode usar a opção Services - Server Properties / Log do IBExpert para descobrir.

Firebird 1.0 tinha compatibilidade com Interbase 6.0. Versões mais novas dos SGBD não tem compatibilidade.

Um banco de dados criado numa versão do Firebird pode ser acessado em um servidor com uma versão do Firebird mais recente, já o inverso não é verdadeiro. Você terá um erro de versão do ODS incompatível. Mesmo assim, é recomendável fazer um backup na versão antiga e restaurar na mais recente.

Também pode haver problema de compatibilidade se o banco foi criado na versão 64 do Firebird e estiver tentando abrir na versão 32.

Não mantenha Interbase e Firebird instalado ao mesmo tempo, os processos usam a mesma porta 3050 para receber as conexões.

Por último: cuidado com a GDS32.DLL, se selecionar a opção de criar a DLL na instalação do Firebird para retrocompatibilidade. Sempre que desinstalar verifique se ela foi deletada (geralmente ela fica na pasta do sistema \Windows\System32 ou \Windows\SysWOW64. Tenha certeza que a GDS32.DLL é da versão do servidor Interbase ou Firebird instalado.

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

Postado
  Em 08/03/2018 at 20:11, BigWings disse:

A primeira coisa é descobrir se o servidor de produção é Interbase ou Firebird e qual a versão. A extensão indica que é Interbase, mas não necessariamente.

Você pode usar a opção Services - Server Properties / Log do IBExpert para descobrir.

Firebird 1.0 tinha compatibilidade com Interbase 6.0. Versões mais novas dos SGBD não tem compatibilidade.

Um banco de dados criado numa versão do Firebird pode ser acessado em um servidor com uma versão do Firebird mais recente, já o inverso não é verdadeiro. Você terá um erro de versão do ODS incompatível. Mesmo assim, é recomendável fazer um backup na versão antiga e restaurar na mais recente.

Também pode haver problema de compatibilidade se o banco foi criado na versão 64 do Firebird e estiver tentando abrir na versão 32.

Não mantenha Interbase e Firebird instalado ao mesmo tempo, os processos usam a mesma porta 3050 para receber as conexões.

Por último: cuidado com a GDS32.DLL, se selecionar a opção de criar a DLL na instalação do Firebird para retrocompatibilidade. Sempre que desinstalar verifique se ela foi deletada (geralmente ela fica na pasta do sistema \Windows\System32 ou \Windows\SysWOW64. Tenha certeza que a GDS32.DLL é da versão do servidor Interbase ou Firebird instalado.

Expandir  

Olá BigWings, boa tarde! 

O banco de dados é Firebird, e a versão que esta instalada no servidor do meu cliente é a 2.5, igualmente a que tenho instalado em minha máquina. 

Eu estou configurando o banco em um ODBC para que eu possa acessar o banco via Excel.

Eu não tinha me atentado á versão da dll GDS32...

Vou instalar os programas em uma máquina virtual de 32x para testar...

Obrigado por enquanto!

Postado

Amigos houve um grande avaço ao tentar abrir o banco de dados. A dificuldade que eu estou tendo agora, é em relação a usar um select na tabela PREPEDIDOS, em qualquer outra tabela o comando é executado normalmente, a dificuldade é somente com a tabela PREPEDIDOS.

Alguem ja teve este erro? Procurei por esse BLR offset 17, porém, não achei nenhuma resposta referente a esta mensagem.

ErrorDB.PNG

  • Moderadores
Postado
  Em 15/03/2018 at 17:04, milaneznando disse:

Alguem ja teve este erro? Procurei por esse BLR offset 17, porém, não achei nenhuma resposta referente a esta mensagem.

Expandir  

Significa que o banco tenta usar a função DIF que está definida em uma UDF personalizada.

Essas funções são binários compilados .DLL (Window) ou .so (Linux) e devem estar no diretório Firebird\UDF no servidor.

https://www.devmedia.com.br/7-utilizando-e-criando-udfs-no-firebird-interbase/4848

Equipe ACBr BigWings
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

 

  • Solution
Postado

Pessoal, depois de muito procurar e quebrar a cabeça, descbri o que era... 

O problema era que a minha UDF DIF tinha pendência da DLL rfunc.dll.

Baixei a DLL do site do Firebird e adicionei na pasta UDF no diretório do Firebird.

Ao executar o select, nenhum erro foi apresentado e consegui visualizar as tabelas.

Muito obrigado á todos pela ajuda.

Pode encerrar este tópico.

  • Este tópico foi criado há 2675 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.
Visitante
Este tópico está agora fechado para novas respostas
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.