La nostra azienda utilizza i database Firebird nei suoi prodotti già da 4 a 5 anni. Prima di ciò abbiamo utilizzato i database Interbases. Recentemente sono arrivati nuovi requisiti che richiedono l'abilitazione del set di caratteri Unicode (al momento stiamo usando il set di caratteri "NONE"). Dopo aver esaminato il problema, ho scoperto che la soluzione richiede una delle fasi di aggiornamento del formato binario ODS (su struttura del disco) dei file di database. Ho letto che la soluzione consigliata è di eseguire il backup e quindi ripristinare il database utilizzando l'utility gbak. C'è un problema con questo. Nella original manual di Firebird c'è scritto:Aggiornamento database Firebird
Il backup dovrebbe essere presa utilizzando l'utilità gbak fornita dalla vecchia versione ODS di InterBase e Firebird. Il ripristino dovrebbe essere effettuato utilizzando gbak dalla versione più recente di Firebird.
Questo è un problema perché il prodotto su cui sto lavorando è in fase di sviluppo da 20 anni e non posso davvero dire quali sono le versioni ODS utilizzate dai nostri clienti. Se dovessi seguire le istruzioni sopra menzionate significherebbe che il mio programma di aggiornamento dovrebbe avere tutte le possibili versioni dell'utilità gbak rilasciate da Interbase 1.0 a questi giorni. In base alle versioni ODS rilevate (ad esempio, richiamando l'utilità della riga di comando "gstat" fornita come parte dell'installazione di Firebird), dovrei chiamare il file gbak.exe corretto. Mi sembra una soluzione eccessivamente complicata. Non è possibile utilizzare solo la più recente utility gbak per la fase di backup e ripristino? Quello di cui ho paura è che faccio un errore da qualche parte in questo processo e che i dati andranno persi. Quindi non posso affidarmi esclusivamente all'utilità gbak per i file di backup ma di backup * .gdb manualmente.
Questa è una domanda molto specifica. Forse dovrai chiedere direttamente al team di creatori di Firebird, se vuoi esserne sicuro. – Majkl
La versione più recente di Interbase gbak supporta tutti gli ODS meno recenti? In tal caso, è sufficiente eseguire il backup utilizzando la più recente utility Interbase e quindi ripristinare con gbak di Firebird. –
@ AndrejKirejeŭ Leggendo la domanda, sta già usando Firebird, quindi non c'è bisogno di usare l'antica Interbase gbak (e migrare direttamente dalle recenti versioni interbase a Firebird è - per quanto ne so - non possibile usando gbak). –