Subject Re: [firebird-support] Problem with opening a Firebird Database
Author Helen Borrie
At 06:45 AM 13/07/2009, you wrote:
>Hi.
>
>Last year I have worked on a Firebird Database. Now I can't open it. I'm afraid it was build on a Firebird 2.5 server at the time but today I only have the newest Firebird 3.1.

There is no "Firebird 3.1". If you built it last year on v.2.5 then you used the alpha version of the v.2.5 server. If you were making a database that you wanted to keep, you should never have used an alpha version to create it. Too late now.

>I have also tried to installe the 2.5 snapshot server on another computer but it still can't open.
>
>The error message says (on a Firebird 2.5 snapshot server):
>
>Wrong or obsolete version.
>Unsupported on-disk structure for file FILNAVN; found 11.2, support 11.2

You do have some kind of v.2.5 database there. A v.2.5 server should not return this exception. However, since there is no way to tell whether a snapshot build is good or not, the first thing to do is UNINISTALL the snapshot and install the v.2.5 beta.

>The error message says (on a Firebird 2.1 server):
>
>Wrong or obsolete version.
>Unsupported on-disk structure for file FILNAVN; found 11.2, support 11.1

Right: a v.2.1 server cannot open a database created on a v.2.5 server.

>Have you some good advices to me on how I can open the databasefile.
>
>Please don't say, that it is impossible :o)

****************************************************
NOTE THIS
Alphas and betas (inc. release candidates) are released for field testing. You won't be able to use this list to get support for anything that was introduced in v.2.5.
****************************************************

First, uninstall the v.2.5 snapshot; then reboot the machine to eliminate any fbclient.dll instance that is running. After reboot, search for fbclient.dll and delete any such files that are found.

After that, install the v.2.5 Beta.
-- Check the property sheet of fbclient.dll and MAKE SURE THAT IT HAS EXACTLY THE SAME BUILD NUMBER AS THE SERVER EXECUTABLE (check the property sheet: the build number should be 23247).

Now you can try to connect to your database.
-- If you succeed, then you can proceed according to your own preference. (Again, it is stressed that you should NOT use alphas and betas to develop production databases!!)

-- If you fail, then it is likely your database is corrupt in some indefinable way. Here is where "impossible" comes in.

-- At that point, at least try to make a gbak backup, regardless of success or failure. Use the -v[erify] and -f switches to get a log file.

-- If the backup completes, then try to restore a copy of the database into a different location.

If your primary objective is to have a database you can protect, rather than to field-test v.2.5 betas, then you could try to attempt to retrieve your data into a v.2.1 database (ODS 11.1).

Assuming you are running Windows:

1. In the $firebird$\bin directory of your v.2.5 installation, rename the v.2.5 gbak.exe to e.g. gbak25.exe.

2. Copy gbak.exe from your v.2.1 installation into the $firebird$\bin directory of your v.2.5 installation.

3. Under the running v.2.5 server, back up the database using the v.2.1 gbak.exe.

4. Finally, move the gbak to the machine where Firebird 2.1.x is running and restore it.

If that works, then back up the database again and keep *both* backups.

./heLen