Você precisa definir o IpcName exclusivo no firebird.conf para cada Firebird Server. Nesse caso, os dois poderão trabalhar com o protocolo local e o nbackup.exe funcionará com êxito.
Eu tenho um Windows Server rodando o Firebird 2.5.4 na porta 3050, e tenho outra versão mais antiga do Firebird Server na porta 3051.
Eu uso o servidor 3051 por razões de compatibilidade para outro aplicativo. Eu ligo quando preciso, e na maioria das vezes é desligado através dos serviços do Windows.
No entanto, os backups estão falhando ao usar o nbackup. O comando é
nbackup.com -u sysdba -p PASSWORD -B 0 "C:\DATABASE.FDB" "X:\BACKUP.fbk"
Ao executar este comando, ele falha com:
[
PROBLEM ON "attach database".
unavailable database
SQLCODE:-904
]
Failure: Database error
A conexão via isql gera o mesmo problema de maneira semelhante.
isql -u sysba -p PASSWORD "C:\DATABASE.FDB"
Statement failed, SQLSTATE = 08001
unavailable database
No entanto, através do host de conexão específico & porta funciona bem.
isql -u sysba -p PASSWORD "localhost/3050:C:\DATABASE.FDB"
Aplicar isso ao nbackup falha, pois é necessário acesso local ao arquivo do banco de dados.
nbackup.com -u sysdba -p PASSWORD -B 0 "localhost/3050:C:\DATABASE.FDB" "X:\BACKUP.fbk"
[
PROBLEM ON "nbackup needs local access to database file".
SQLCODE:-999
]
Failure: Database error
Existe algum tipo de variável de ambiente ou configuração que impeça o nbackup de acessar o arquivo de banco de dados corretamente? O aplicativo Line of Business não tem problemas para se conectar e fazer alterações no banco de dados. Nenhum erro no firebird.log em ambas as instâncias. Muito estranho.
Tags firebird