Dans MySQL, vous pouvez utiliser l'instruction show avec datadir pour voir où les données de la table sont stockées. datadir est une variable système correspondant au répertoire de données. La syntaxe est "show variables like 'datadir';"; commande pour afficher l’emplacement spécifique de stockage du répertoire de données.
L'environnement d'exploitation de ce tutoriel : système windows10, version mysql8.0.22, ordinateur Dell G3.
Nous savons tous que MySQL doit prendre en charge la persistance. Il stocke les données sur le disque. Dans le système d'exploitation, le périphérique qui gère le disque est appelé système de fichiers. développement, La plupart d'entre nous ne se soucient que des index MySQL et de l'optimisation des performances SQL, mais la façon dont les données sont stockées et où elles existent est comme une boîte noire.
1 Les données sont stockées dans le système de fichiers
Notre moteur de stockage couramment utilisé, InnoDB, stocke les tables sur le système de fichiers (c'est-à-dire le disque). Lorsque les données doivent être lues, InnoDB les lira à partir du système de fichiers. Renvoyez-le-nous ; lorsque les données doivent être écrites, InnoDB réécrira les données dans le système de fichiers. Alors, comment les données du moteur de stockage InnoDB sont-elles stockées dans le système de fichiers ?
2 Répertoire de données MySQL
Lorsque le serveur MySQL démarre, il chargera les fichiers à partir d'un répertoire du système de fichiers, et les données générées pendant l'exécution seront également écrites et stockées dans ce répertoire du système de fichiers. est le répertoire de données
2.1 Où se trouve le répertoire de données MySQL
Le répertoire de données MySQL correspond à une variable système datadir Vous pouvez utiliser cette commande pour afficher l'emplacement spécifique où le répertoire de données est stocké :
show variables like 'datadir';
C'est-à-dire. disons, le répertoire de données de mon MySQL local est Dans la structure du répertoire de données dans /usr/local/mysql/data/
3
nous savons que les données que MySQL générera pendant le fonctionnement comprennent : des bases de données, des tables, vues, serveurs, etc. que nous créons, en plus des données supplémentaires créées par MySQL pour un meilleur fonctionnement du programme. Examinons ensuite de plus près le contenu du répertoire de données ~
3.1 Représentation de la base de données dans le système de fichiers.
Lorsque nous exécutons l'instruction create database mydb pour créer une base de données, MySQL fera deux choses :
Créer un dossier mydb avec le même nom que le nom de la base de données dans le répertoire de données
Créer un fichier nommé db.opt sous mydb . Ce fichier contient divers attributs de la base de données. , tels que le jeu de caractères de la base de données, les règles de comparaison, etc.
Actuellement, en exécutant la commande show databases, vous pouvez visualiser
Les bases de données que j'ai créées localement sont :
Puis j'ai entré le répertoire /usr/local/ Allez dans mysql/data/ pour voir s'il y a l'un des dossiers ci-dessus :
En effet, les dossiers en surbrillance correspondent aux bases de données dans MySQL une par une. Cependant, si vous regardez attentivement, information_schema n'existe pas réellement. Parce qu'il est spécial, les concepteurs de MySQL ont traité son implémentation de manière spéciale, il n'y a donc pas de répertoire de base de données correspondant.
Apprentissage recommandé : 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!