J'ai donc accidentellement formaté mon disque dur, réinstallé Windows et oublié de sauvegarder une base de données importante présente sur mon serveur mySQL. J'essaie maintenant de récupérer des fichiers à l'aide de certains logiciels, mais je ne sais pas quoi rechercher.
Quel est le chemin dans lequel les fichiers sont stockés et quels sont les fichiers nommés (quelle convention d'appellation ou quelle extension de fichier dois-je rechercher?)
Je crois que mon serveur utilisait MyISAM, mais pas à 100%.
Tout avis sera le bienvenu!
Vous pouvez vérifier le fichier my.ini
pour voir où se trouve le dossier de données.
Il y a généralement un dossier {mysqlDirectory}/data
Stockage de données MySQL:
Commands.frm
Commands.myd
Commands.myi
Les fichiers * .frm contiennent les définitions de table. Vos fichiers * .myi sont des fichiers d’index MyISAM. Vos fichiers * .myd contiennent les données de la table.
Modifier/Mettre à jour . En raison de l’intérêt porté à la question, voici plus d’informations que l’on trouve également dans les commentaires.
Dans Windows 8.1, les bases de données MySQL sont stockées (par défaut) ici: C:\ProgramData\MySQL\MySQL Server 5.6\data
Le dossier C:\ProgramData est un dossier caché. Vous devez donc le saisir dans l’adresse de l’explorateur Windows pour y accéder. Dans ce dossier de données, les bases de données sont nommées /{database_name_folder}/{database_tables_and_files}
.
Par exemple,
C:\ProgramData\MySQL\MySQL Server 5.6\data\mydatabase\mytable.frm
C:\ProgramData\MySQL\MySQL Server 5.6\data\mydatabase\mytable.ibd
Merci @ marty-mcgee pour ce contenu
Sous Windows 7, la base de données MySQL est stockée sur
C:\ProgramData\MySQL\MySQL Server 5.6\data
Remarque: Ceci est un dossier caché. Et mon exemple est pour MySQL Server version 5.6; changez le nom du dossier en fonction de votre version si elle est différente.
Il est pratique de connaître cet emplacement car parfois, MySQL Workbench ne parvient pas à supprimer les schémas (ou à importer des bases de données). Cela est principalement dû à la présence de fichiers dans les dossiers de la base de données qui, pour une raison quelconque, n'ont pas pu être supprimés lors d'un processus précédent par le Workbench. Supprimez les fichiers à l’aide de l’explorateur Windows et essayez à nouveau (déposer, importer), votre problème devrait être résolu.
J'espère que cela t'aides :)
J'ai un fichier par défaut my-default.ini à la racine et une configuration de serveur est unique:
[mysqld]
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
Donc ça ne me dit pas le chemin.
Le meilleur moyen est de se connecter à la base de données et d’exécuter la requête suivante:
SHOW VARIABLES WHERE Variable_Name LIKE "%dir" ;
Voici le résultat de cela:
basedir C:\Program Files (x86)\MySQL\MySQL Server 5.6\
character_sets_dir C:\Program Files (x86)\MySQL\MySQL Server 5.6\share\charsets\
datadir C:\ProgramData\MySQL\MySQL Server 5.6\Data\
innodb_data_home_dir
innodb_log_group_home_dir .\
lc_messages_dir C:\Program Files (x86)\MySQL\MySQL Server 5.6\share\
plugin_dir C:\Program Files (x86)\MySQL\MySQL Server 5.6\lib\plugin\
slave_load_tmpdir C:\Windows\SERVIC~2\NETWOR~1\AppData\Local\Temp
tmpdir C:\Windows\SERVIC~2\NETWOR~1\AppData\Local\Temp
Si vous voulez voir tous les paramètres configurés pour la base de données, exécutez ceci:
SHOW VARIABLES;
La variable storage_engine vous dira si vous utilisez InnoDb ou MyISAM.
Pour Windows 7: c:\utilisateurs\tous les utilisateurs\MySql\serveur MySql x.x\Data \
Où x.x est le numéro de version du serveur SQL installé sur votre ordinateur.
Fidel
Cela devrait être votre {chemin d'installation}\data, par exemple. C:\apps\wamp\bin\mysql\mysql5.5.8\data\{databasename}
Il suffit d’effectuer une recherche Windows pour les fichiers * .myi sur vos partitions locales. Période.
Comme je le soupçonnais, ils se trouvaient dans un dossier de fichiers programme, au lieu d'utiliser un dossier contenant uniquement des données, comme le font la plupart des autres gestionnaires de bases de données.
Pourquoi effectuer une recherche dans un fichier my.ini, l'ouvrir avec un éditeur, rechercher la chaîne de chemin d'accès, s'assurer de ne pas modifier le fichier de configuration (!), Puis effectuer une seconde recherche? Compliqué sans un avantage supplémentaire autre que de pratiquer la dactylographie.
Je viens d'installer MySQL 5.7 sur Windows7. Les fichiers de base de données sont situés dans le répertoire suivant qui est caché: C:\ProgramData\MySQL\MySQL Server 5.7\Data
Le fichier my.ini
se trouve à la même racine: C:\ProgramData\MySQL\MySQL Server 5.7
Il se trouve généralement dans le dossier spécifié ci-dessous, mais ProgramData est généralement un dossier caché. Pour l'afficher, allez dans le panneau de configuration, recherchez "dossier", puis, sous Paramètres avancés, cochez la case Afficher les fichiers cachés, puis cliquez sur appliquer.
en MySQL sont
". myd" une base de données auto et
". tmd" un fichier temporel.
Mais parfois, je vois aussi ".sql".
Cela dépend de vos paramètres et/ou de la méthode d'exportation.
1) Localisez le fichier my.ini, stocké dans le dossier d’installation de MySQL.
Par exemple,
C:\Program Files\MySQL\MySQL Server 5.1\my.ini
2) Ouvrez le fichier “my.ini” avec notre éditeur de texte de faveur.
#Path to installation directory. All paths are usually resolved relative to this.
basedir="C:/Program Files/MySQL/MySQL Server 5.1/"
#Path to the database root/"
datadir="C:/Documents and Settings/All Users/Application Data/MySQL/MySQL Server 5.1/Data
Trouver le "datadir", c'est où MySQL stocke les données dans Windows.
C:\Fichiers de programme\MySQL\MySQL Workbench 6.3 CE\sys
collez URL
in dans le fichier window, .__ et obtenez Tables, Procedures, Functions
à partir de ce répertoire
Si vous utilisez Win10 avec le serveur Xampp installé, vous pouvez trouver le dossier de données dans C:\xampp\mysql\data
Dans le dossier de données, chaque base de données possède son propre dossier, qui contient à son tour les fichiers .frm, .myi et .myd, qui représentent une seule table de la base de données.
Si, par exemple, vous avez créé une base de données avec le nom: myschool et à l'intérieur de la base de données, vous avez trois tables avec les noms:
Ensuite, vous aurez pour la table de pépinière: nursery.frm, nursery.myi et nursery.myd. Idem ira pour les tables primaire et secondaire. Ainsi, dans le je mentionné ici, vous aurez un total de 9 fichiers dans le dossier de base de données nommé myschool .
Vous pouvez ensuite copier le dossier de base de données et l’utiliser dans votre nouveau dossier de données d’installation mysql.
J'espère que ça aide.
Meilleures salutations.
MYSQL 8.0:
Recherchez my.ini
sur le disque, nous allons trouver ce dossier:
C:\ProgramData\MySQL\MySQL Server 8.0
C'estProgramData
, pasProgram file
Les données sont dans le sous-dossier: \Data
.
Chaque database
possède un dossier, chaque table
est un fichier, chaque index
est un fichier ou plus.