Instalando o Firebird 1.5 e 2.5 no mesmo servidor Windows
Muitas vezes é necessário conviver com duas versões do Firebird na mesma máquina. E mesmo sabendo que a engine do Firebird 2.5 pode se comportar da mesma maneira que a engine do Firebird 1.5 ao detectar um ODS antigo, devemos avaliar alguns fatores antes de colocar um banco de dados do FB 1.5 para trabalhar sob o servidor FB 2.5 nesta máquina. Como por exemplo:
- Alguém pode, por descuido, fazer um backup e um restore do banco de dados do sistema legado e converter sua versão do ODS automaticamente para uma versão compatível com o 2.5. Isto pode fazer com que o aplicativo legado não consiga mais interagir com seu banco de dados.
- O software legado pode conter um sistema de checagem de versão do Firebird no qual pode bloquear qualquer tentativa de executá-lo em uma versão na qual ele não está apto a trabalhar.
- O fornecedor do software legado pode alegar que seu software “está dando pau” por não rodar dentro das especificações corretas.
Uma alternativa para este problema seria fazermos rodar ambas as versões do Firebird no mesmo servidor.
Um requisito muito importante para esta técnica é que todas as versões do Firebird devem ser instaladas como serviço. Nunca devem estar como aplicação. Este é o primeiro ponto no qual devemos tomar cuidado, pois em meus testes foi o que mais causou enrosco. Para não gerar problema a minha dica aqui é: desinstale primeiro todos os Firebird do computador. Assim você terá a chance de instalar novamente de forma correta.
Eu não pretendo aqui ensinar a instalar o Firebird no Windows. Eu vou supor que você já é capaz de fazer isso. Mesmo porque a instalação do mesmo no Windows é basicamente selecionar o botão Seguinte.
Vamos lá então:
1. Baixe as duas versões para o seu computador:
http://www.firebirdsql.org/en/firebird-1-5/
http://www.firebirdsql.org/en/firebird-2-5/
2. Desintale qualquer firebird do computador. Por garantia e praticidade reinicie o computador.
3. Instale normalmente o Firebird 1.5. Preste atenção somente a um detalhe: escolha a opção que faça com que ele rode como serviço:
4. Antes de finalizar a instalação, para facilitar as coisas, não execute de imediato o Firebird. Para isso basta desmarcar a opção abaixo na última tela do Assistente de Instalação:
5. Nosso próximo passo é rodar o instalador do Firebird 2.5. Não se assuste com a tela abaixo. Basta responder Não.
Basicamente o que o instalador nos avisou é que ele só jogará os arquivos do Firebird 2.5 nas devidas pastas, mas que o processo de registro do servidor deverá ficar sob nossa responsabilidade. Não tem problema. Mais adiante daremos o jeito nisso.
6. Após finalizar o assistente de instalação vá até a linha de comando e digite as instruções abaixo para ir até a pasta onde o Firebird 2.5 foi instalado e abrir o arquivo firebird.conf:
Localize a linha abaixo:
Descomente e modifique para:
Com isso fizemos com que o Firebird 2.5 responda na porta 3051 e o Firebird 1.5 na porta 3050 (padrão).
Salve o arquivo, saia do editor e entre no diretório ./bin do firebird 2.5 e execute o instsvc.
O instsvc é o comando responsável por efetuar a instalação do serviço do Firebird. O parâmetro -n determina o nome do serviço. No nosso caso o serviço do Firebird 2.5 se chamará Firebird_2_5.
Note que quando você realizou a instalação do Firebird 2.5 através do Assistente de Instalação ele não pediu nada. Não perguntou se deveria instalar o Guardian e nem mesmo se deveria operar como serviço ou como aplicação. Isso porque o Firebird 2.5, quando detectou a instalação do 1.5, deixou a finalização da instalação na sua mão.
7. Reinicie o computador. Só pra se certificar que os serviços iniciarão automaticamente. Depois disso é importante checar como os serviços ficaram instalados no Windows:
Pronto! Basta configurar a string de conexão do seu software com a porta correta.
Exemplo de URL de conexão para softwares que pedem o servidor e o caminho do banco de dados em linhas separadas:
Para acessar o Firebird 1.5:
Para acessar o Firebird 2.5:
Exemplo de URL de conexão para softwares que pedem o servidor e o caminho do banco de dados na mesma linha:
Para acessar o Firebird 1.5:
Para acessar o Firebird 2.5:
Note que as conexões do Firebird 1.5. não possuem a porta 3050 declarada. Isso porque é a porta default do serviço.
É isso aí! Espero que esta dica ajude.