A ideia foi emprestada do artigo Conversão de streaming de bancos de dados Firebird 2.5 para o formato ODS12 (Firebird 3.0) , que discute a questão da conversão de streaming em uma máquina, com duas versões do Firebird instaladas, o que não é muito conveniente quando se pensa em mudar para outro servidor.
O que nós temos:
- Dois servidores, com versões FB 2.5 e FB 3.0
- Rede local entre servidores
- Arquivo DB pesando 145gb
A ideia geral da transferência consiste no mesmo pipeline que foi dado no artigo acima, você só precisa fazer pequenos ajustes:
gbak -b -g ... 25.fdb stdout | ssh -t ... user@host "sudo gbak -c stdin 30.fdb"
Após a restauração, seria bom apontar o usuário firebird e verificar o banco de dados:
sudo chown firebird:firebird 30.fdb gfix -v -full 30.fdb
Tudo, se o banco de dados estiver intacto, então não haverá erros, informações detalhadas sobre o resultado da checagem do arquivo do banco de dados podem ser visualizadas em /var/lib/firebird.log, se estiver tudo bem aí, então você pode alternar os usuários para trabalhar com o novo banco de dados.
A transferência demorou cerca de 80 minutos, o que me parece bastante rápido.