Wat is het IB-bestandsformaat?
.ib is de bestandsextensie voor de database van Embarcadero InterBase, een commercieel relationeel databasemanagementsysteem waarvan de oorsprong teruggaat tot 1984. Oorspronkelijk ontwikkeld door Groton Database Systems, werd InterBase in 1991 overgenomen door Borland en later in 2008 door Embarcadero Technologies.
Een .ib-bestand is een binaire, op pagina's gebaseerde database die is opgeslagen in het eigen On-Disk-Structure (ODS) formaat van InterBase. Het bestand is verdeeld in pagina's van vaste grootte - 1.024, 2.048, 4.096, 8.192 of 16.384 bytes - gekozen op het moment dat de database wordt aangemaakt. Pagina 0 is de headerpagina, waarop de ODS-hoofdversie, de paginagrootte en de huidige transactiestatus worden vastgelegd; volgende pagina's bevatten gegevens, indexen, BLOB's en pointer-ketens. ODS 17 komt overeen met InterBase 2020.
InterBase deelt zijn fundamentele ODS-paginalay-out met Firebird, de open-source fork die in 2000 werd uitgebracht op basis van de broncode van InterBase 6. De twee wijken structureel van elkaar af vanaf ODS 12. Oudere InterBase-databases gebruikten de extensie .gdb; .ib is de huidige conventie, hoewel de engine dit niet afdwingt.
Optionele versleuteling op databaseniveau is beschikbaar vanaf InterBase 2009 als een gelicentieerde add-on. InterBase ToGo- en IBLite-varianten ondersteunen embedded implementatie op Android en andere platforms. Reservekopiebestanden gebruiken de extensie .ibk.
Beveiliging & veiligheid
RISICO: LOWIB-databasebestanden zijn passieve gegevenscontainers; ze kunnen geen code uitvoeren op het host-besturingssysteem. Het risico is blootstelling van gegevens als het bestand onbeschermd wordt gedeeld - versleuteling in InterBase 2009+ helpt hierbij. Reservekopiebestanden (.ibk) dragen dezelfde gegevensgevoeligheid.
Formaatdetails
in een notendop- Firebird Databasebestand - Firebird (open-source InterBase-fork) gebruikt volgens conventie .fdb maar kan .ib gebruiken; deelt hetzelfde ODS-paginaformaat tot ODS 11.
Programma's die IB-bestanden openen
Technische details
diepe specificaties| Byte-volgorde | Voornamelijk little-endian; sommige metadatavelden big-endian in oudere ODS-versies |
| Ondersteunde paginagrootten | 1024, 2048, 4096, 8192 of 16384 bytes per pagina (vastgelegd bij aanmaak database) |
| Locatie ODS-versie | Headerpagina (pagina 0) op offset 0x12-0x13 |
| ODS-versie mapping | ODS 10 = IB 6 / FB 1.0; ODS 11 = FB 2.x; ODS 12 = FB 3.0; ODS 17 = InterBase 2020 |
| Inhoud headerpagina | Pagina 0: ODS-versie, paginagrootte, transactiestatus, allocatie-bitmaps |
| Paginatypen | Header-, gegevens-, index- (B-tree), blob-, pointer- en transactie-inventarispagina's |
| Versleuteling | Optionele AES-databaseversleuteling (InterBase 2009+, gelicentieerde add-on) |
| Ondersteuning voor meerdere bestanden | Primair .ib-bestand plus secundaire extensiebestanden voor databases die de limieten van één bestand overschrijden |
| Integriteit op paginaniveau | Optionele CRC-checksum via hdr_flags; ACID-naleving afgedwongen via transactiejournal |
| Verouderde extensie | .gdb was de gebruikelijke extensie in oudere InterBase-versies |
| Mobiele/embedded variant | InterBase ToGo / IBLite - embedded implementatie voor Android- en IoT-platforms |
| Compatibiliteit met Firebird-fork | Deelt ODS-lay-out tot en met ODS 11; wijkt structureel af vanaf ODS 12 |
| Extensie reservekopiebestand | .ibk (InterBase database backup-bestanden) |
| Uitgebracht | 1984 (InterBase 1.0 by Groton Database Systems) |
| Laatste versie | InterBase 2020 Update 7 (ODS 17) |
| Specificatie | docwiki.embarcadero.com |
IB conversies
Community V&A
gevraagd door gebruikersNog geen vragen - wees de eerste om iets te vragen over IB-bestanden.