Maison  >  Article  >  base de données  >  Quel fichier est .ibd dans MySQL ?

Quel fichier est .ibd dans MySQL ?

青灯夜游
青灯夜游original
2023-04-04 15:29:519551parcourir

Dans MySQL, ibd est un fichier de données et un fichier d'index. Il est principalement utilisé pour stocker des données et constitue une partie essentielle de MySQL. Les fichiers MySQL IBD peuvent améliorer les performances des bases de données MySQL et conviennent parfaitement aux grandes bases de données non structurées. Les fichiers IBD de MySQL ont une bonne évolutivité et peuvent protéger l'intégrité des données ; dans le mécanisme d'architecture de base de données en couches, l'utilisation de fichiers IBD peut efficacement étendre la base de données sans affecter l'intégrité de la base de données.

Quel fichier est .ibd dans MySQL ?

L'environnement d'exploitation de ce tutoriel : système windows7, version mysql8, ordinateur Dell G3.

ibd est le fichier de données et le fichier d'index de MySQL et ne peut pas être lu directement.

Importance du fichier IBD de MySQL (mysqlibd)

Le fichier IBD de MySQL est l'un des fichiers clés de MySQL. Il est principalement utilisé pour stocker des données et constitue une partie essentielle de MySQL. Nous parlons ici de l’importance des fichiers IBD.

Tout d’abord, les fichiers MySQL IBD peuvent améliorer les performances de la base de données MySQL. Dans le processus de stockage des données, si vous n'utilisez pas de fichiers IBD, vous devez lire les données via des opérations d'E/S complètes, ce qui entraînera une lourde charge et réduira les performances de la base de données. Mais l’utilisation des fichiers IBD est différente. Il utilise des algorithmes de compression pour réduire considérablement la taille des fichiers, les rendant plus faciles à lire et plus transportables, améliorant ainsi considérablement les performances et la transportabilité des bases de données.

Deuxièmement, les fichiers IBD de MySQL sont très adaptés aux grandes bases de données non structurées. Lors du stockage de données non structurées à grande échelle, l'utilisation de formats de fichiers de base de données ordinaires entraînera des problèmes tels que l'impossibilité de répondre aux types de données et à l'identification des champs, et l'utilisation de fichiers IBD peut résoudre efficacement ces problèmes.

Enfin, les fichiers IBD de MySQL sont très évolutifs et peuvent protéger l'intégrité des données. Dans un mécanisme d'architecture de base de données en couches, l'utilisation de fichiers IBD peut efficacement étendre la base de données sans affecter son intégrité. En outre, les fichiers IBD peuvent également prendre en charge efficacement la cohérence des données afin de garantir leur intégrité et leur sécurité.

Dans l'ensemble, les fichiers IBD de MySQL sont d'une grande importance et peuvent améliorer les performances des bases de données et restructurer les grandes bases de données non structurées de MySQL. De plus, il peut prendre en charge la mise à l’échelle de grandes bases de données et maintenir l’intégrité et la cohérence des données.

Analyse préliminaire du format de fichier MySQL ibd

Après que MySQL ait créé la table, 2 fichiers seront créés dans le dossier de bibliothèque correspondant : l'un est frm et l'autre est ibd. Analysons brièvement le format de fichier ibd.

Ici, vous devez d'abord connaître quelques connaissances préliminaires :

Vérifiez la taille du bloc InnoDB, qui est généralement de 16k

show vaiables like '%page%'

Vous pouvez voir que innodb_page_size est de 16384 octets.

Utilisez ibd pour diviser la taille en octets afin de savoir combien de blocs contient le fichier !

Par exemple :

98304/16384 On peut voir que ce gyj_t3.ibd a 6 pages

Les données correspondantes de cette bibliothèque sont :

Regardez le schéma de fichier officiel :

Le premier bloc est : En-tête d'espace de fichier

Le deuxième bloc est : Insérer un bitmap de tampon

Le troisième bloc est : Inode de segment de fichier

À partir du quatrième bloc, les données sont stockées et le fichier ibd correspondant Mettez-le sous les fenêtres et ouvrez-le pour y jeter un œil. Regardons directement le quatrième bloc, le bloc de données. L'en-tête est marqué comme 0x45B

et recherchons-le :

Vérifions d'abord s'il s'agit de la fin du troisième bloc :

C018h, le correspondant. décimal est 49176

La position du premier bloc :

est 0018h, ce qui correspond à 24 en décimal.

Le caractère devant ceci est l'en-tête du fichier, qui est utilisé pour identifier le format du fichier et d'autres informations.

Calculons si c'est la fin du troisième bloc. La position est : (49176 - 24) / 16384 = 3 est juste.

C'est le bit de données !

Regardez le fichier de données correspondant :

Comme vous pouvez le constater, dans le segment de données MySQL, NULL et '' n'occupent pas d'espace.

La longueur de int est de 4 octets et la longueur des autres noms de longueur variable est de 10 octets, selon la valeur la plus longue.

La deuxième ligne d'ID de données : 80 00 00 03, la ligne suivante est à 80 00 00 04

【Recommandations associées : tutoriel vidéo mysql

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn