Qu'est-ce que le format de fichier IB ?
.ib est l'extension de fichier de base de données pour Embarcadero InterBase, un système de gestion de base de données relationnelle commercial dont les origines remontent à 1984. Développé à l'origine par Groton Database Systems, InterBase a été acquis par Borland en 1991, puis par Embarcadero Technologies en 2008.
Un fichier .ib est une base de données binaire structurée en pages, stockée au format propriétaire On-Disk-Structure (ODS) d'InterBase. Le fichier est divisé en pages de taille fixe - 1 024, 2 048, 4 096, 8 192 ou 16 384 octets - choisie lors de la création de la base de données. La page 0 est la page d'en-tête, enregistrant la version majeure de l'ODS, la taille de la page et l'état actuel de la transaction ; les pages suivantes contiennent les données, les index, les BLOB et les chaînes de pointeurs. L'ODS 17 correspond à InterBase 2020.
InterBase partage sa structure de page ODS fondamentale avec Firebird, le fork open-source publié en 2000 à partir du code source d'InterBase 6. Les deux divergent structurellement à partir de l'ODS 12. Les bases de données InterBase plus anciennes utilisaient l'extension .gdb ; .ib est la convention actuelle, bien que le moteur ne l'impose pas.
Le chiffrement optionnel au niveau de la base de données est disponible depuis InterBase 2009 en tant que module complémentaire sous licence. Les variantes InterBase ToGo et IBLite prennent en charge le déploiement embarqué sur Android et d'autres plateformes. Les fichiers de sauvegarde utilisent l'extension .ibk.
Sécurité et sûreté
RISQUE : LOWLes fichiers de base de données IB sont des conteneurs de données passifs ; ils ne peuvent pas exécuter de code sur le système hôte. Le risque réside dans l'exposition des données si le fichier est partagé sans protection - le chiffrement d'InterBase 2009+ aide à prévenir cela. Les fichiers de sauvegarde (.ibk) présentent la même sensibilité des données.
Détails du format
en bref- Fichier de base de données Firebird - Firebird (fork open-source d'InterBase) utilise .fdb par convention mais peut utiliser .ib ; partage le même format de page ODS jusqu'à l'ODS 11.
Programmes qui ouvrent les fichiers IB
Détails techniques
spécifications approfondies| Ordre des octets | Principalement little-endian ; certains champs de métadonnées sont en big-endian dans les anciennes versions d'ODS |
| Tailles de page prises en charge | 1024, 2048, 4096, 8192 ou 16384 octets par page (fixé à la création de la base de données) |
| Emplacement de la version ODS | Page d'en-tête (page 0) à l'offset 0x12-0x13 |
| Correspondance des versions ODS | ODS 10 = IB 6 / FB 1.0 ; ODS 11 = FB 2.x ; ODS 12 = FB 3.0 ; ODS 17 = InterBase 2020 |
| Contenu de la page d'en-tête | Page 0 : version ODS, taille de page, état de transaction, bitmaps d'allocation |
| Types de pages | En-tête, données, index (B-tree), blob, pointeur, pages d'inventaire de transactions |
| Chiffrement | Chiffrement de base de données AES optionnel (InterBase 2009+, module sous licence) |
| Prise en charge multi-fichiers | Fichier .ib principal plus fichiers d'extension secondaires pour les bases de données dépassant les limites d'un fichier unique |
| Intégrité au niveau de la page | Somme de contrôle CRC optionnelle via hdr_flags ; conformité ACID appliquée via le journal des transactions |
| Extension héritée | .gdb était l'extension courante dans les anciennes versions d'InterBase |
| Variante mobile/embarquée | InterBase ToGo / IBLite - déploiement embarqué pour les plateformes Android et IoT |
| Compatibilité avec le fork Firebird | Partage la structure ODS jusqu'à l'ODS 11 ; diverge structurellement à partir de l'ODS 12 |
| Extension de fichier de sauvegarde | .ibk (fichiers de sauvegarde de base de données InterBase) |
| Publié | 1984 (InterBase 1.0 by Groton Database Systems) |
| Dernière version | InterBase 2020 Update 7 (ODS 17) |
| Spécification | docwiki.embarcadero.com |
Conversions IB
Q&R de la communauté
posées par les utilisateursPas encore de questions - soyez le premier à poser une question sur les fichiers IB.