Unsupported on-disk structure

0

I was developing in Delphi using Firebird 2.5. And it started giving an error when trying to connect to the local database. When trying to connect it gives the following message:

Error: unsupported on-disk structure for file C:/....meucaminho...;
found 32779.15, support <Missing arg #4 - possibly status vector overflow>. 
<Missing arg #5 - possibly status vector overflow>.

OBs: I have IBExpert on my machine, and through it I can access the database.

    
asked by anonymous 13.06.2016 / 13:46

1 answer

2

Friend, I've seen this error occur when the database was created on a particular version of Firebird and then the file was copied to another machine with a different version.

In addition, check also the database access DLLs. Their versions can also cause these errors.

Follow the Firebird FAQ topic:

  

Unsupported on-disk structure for file xxx.fdb; found 32779, support   10

     

This error shows up in two possible cases:

     
  • You are not accessing the Firebird database. InterBase databases have a similar structure, but IB database versions higher than 6.0 are   not supported by Firebird server.

  •   
  • You are accessing the higher version database file with lower version of Firebird server. For example, you created a database with Firebird   2.0, and now you're trying to access it with Firebird 1.5 server (or embedded client).

  •   

    In case this happens, and you still need to access the data with older   version, you should do something like this:

         
    • Install the old version of Firebird and create an empty database with it.
    •   

    This empty database will have the lower ODS (see FAQ # 117 to learn   about ODS). This is needed in order to have a database file which can   be used by both versions of Firebird. This empty database needs to   have all the metadata (tables, procedures, etc.) as the full one. If   you do not have access to the old database structure in some 'safe'   place, you can extract it using isql tool (with -x option) or some   graphic administration tool (Extract Metadata DLL option in   FlameRobin). If you use some features only in newer   Firebird versions, you might need to edit the SQL script manually to   make it work on older Firebird version.

         
    • Install the new version of Firebird and copy the data from full to the empty database
    •   

    This operation needs a new Firebird server since only it can read both   database structures. To do the copying, you can use some data pump   tool like IB Data Pump or FBCopy (FBCopy has a neat option to disable   all triggers while data is being copied and can also copy generators).   See FAQ # 20 for more info.

         
    • When copying is done you have the database with old ODS and all your data in it. You can now install the old version of Firebird once   again, and keep working with it.

           
    • A version of Interbase maybe installed. You need to change the standard RemoteServicePort setting in firebird.conf from 3050 some   other value. For example, 3051. Make sure you use that port in all   connection strings, i.e. instead of LOCALHOST use LOCALHOST / 3051,   instead of 192.168.0.11 use 192.168.0.11/3051, etc.
    •      

    Note: section 3 of this FAQ is contributed by AnToine van Maarle.

    Source: link

        
    13.06.2016 / 15:28