DelphiFAQ Home Search:
General :: Databases :: InterBase
Help with InterBase, Borland's open source database.

Articles:

This list is sorted by recent document popularity (not total page views).
New documents will first appear at the bottom.

Featured Article

Fixing a broken GDB file

Question:

My *.gdb file is damaged. When I run gfix, I get this error message:

database file appears corrupt ()
-wrong page type
-page 469 is of wrong type (expected 3, found 0)


I tried -mend, -full etc. all the combinations, but no luck with the *.gdb file. Can I ignore broken pages with gfix from my GDB file, so that I can rescue as much data as I can? I really need that data.

Answer:

  1. make a safety bulk *.gdb file backup. You should shutdown IBServer for that. Always make copies of the .GDB and/or backups. It can be done without shutting down the interbase server, but it's not 100% safe.
  2. There is no way to use gfix to ignore the bad page. So to get to as much data as possible: Do a metadata only backup. Restore that to a new database. Use a data pump to pump data from the damaged database to this restored database.


Alternatively, you can contact the folks at www.ib-aid.com and see if they can fix the database manually.


Generated 8:00:28 on Apr 24, 2018