Subject Re: Can I use any version of gbak to backup/restore any version of firebird database
Author Chee Yang
Hi Dmitry,

Thanks for your clarification. I try to explain to you why I use gbak.

My application use to work with Firebird 1.5, 2.0, 2.1 and 2.5. Before Firebird 2.5.2, the only way to get firebird database backup from remote server is thru gbak. The Firebird Service Manager doesn't support remote backup/restore prior to 2.5.2. Due to the reason, I have to deploy all firebird version's gbak along with my application in order to support remote backup/restore.

Now, Firebird 2.5.2's service manager support remote backup/remote. I no longer need to deploy gbak anymore. I am planning to upgrade my application to support Firebird 2.5.2 and above only.

During the upgrade process, end user may have previous Firebird Server installed. I should let my new application that support ONLY Firebird 2.5.2 to be able to get the backup from old Firebird Server. I only deploy gbak from Firebird 2.5.2 and hope it able to get remote backup from old Firebird server. Once I got the backup, user should uninstall the old Firebird server and install Firebird server 2.5.2. From this point on, user may use remote backup/restore of Firebird 2.5.2 service manager without relying on gbak anymore.


--- In firebird-support@yahoogroups.com, Dmitry Kuzmenko <kdv@...> wrote:
>
> Hello, Chee!
>
> Monday, June 24, 2013, 4:39:31 PM, you wrote:
>
> CY> Each release of Firebird has it own gbak.exe.
> CY> I am just wondering if I can use any version of gbak to
> CY> backup/restore any version of firebird database?
>
> gbak is not a spherical horse, it related to the
> ODS (database structure), because it need to know all new
> metadata changes that is new for the new Firebird version.
>
> Thus, gbak have it's own backup format, to be understood
> by the previous versions of gbak (is it compatible or not).
> Usual compatibility is from top to bottom,
> i.e. gbak from FB 2.5 can understand previous backup formats.
>
> CY> For example, can I use gbak.exe from Firebird 1.5 to
> CY> backup/restore Firebird 1.5/2.0/2.5 database?
>
> gbak makes backup only in it's native format.
> If you will use gbak from 2.5 with Firebird 1.5, you can make
> backup, but can't (probably) make restore (from 2.5 format), because
> Firebird 1.5 itself does not know anything about 2.5 features.
>
> Also new versions of gbak sometimes have new features.
>
> CY>Or can I use gbak.exe from Firebird 2.5 to backup/restore Firebird 1.5/2.0/2.5 database?
> you may use gbak from 2.5 to backup db's from 2.5 and to restore
> backups from 1.5 and 2.x.
>
> CY> I have tried it and it seems work. Is it advisable to do so?
>
> In common, this is pointless, and can be used only in rare
> cases (including repairing old databases) to migrate "down",
> for example, from Firebird 2.5 to Firebird 1.5 (here you need gbak
> from 1.5).
> No guarantee of success for this kind of migration, of course.
>
> So, finally, you should use same gbak version that Firebird server have.
>
> btw, what idea you have with that "compatibility"?
>
> --
> Dmitry Kuzmenko, www.ib-aid.com
>