web-dev-qa-db-fra.com

Restaurer le dossier de base de données MySQL à partir d'un disque dur récupéré

J'ai pu récupérer le dossier de base de données du serveur MySQL 5.5 du système d'exploitation corrompu (Windows XP) sur

C:\Documents and Settings\All Users\Application Data\MySQL\MySQL Server 5.5\data\

Comment puis-je le restaurer manuellement sur le nouveau serveur MySQL? Lorsque j'ouvre le dossier, j'ai découvert plusieurs dossiers et je pensais que ce sont les bases de données. Je n'ai déposé aucun fichier SQL.

16
John Woo

Ok, j'ai obtenu la réponse à mon propre problème.

Scénario possible

  1. Le programme MYSQL est corrompu et ne démarre pas. Une nouvelle installation de MYSQL n'a pas restauré les données.
  2. L'ordinateur est tombé en panne mais le disque dur fonctionne toujours
  3. Windows corrompu et ne démarre pas, mais les données sont en sécurité.

Pour votre information, dans MYSQL, les fichiers avec l'extension MYD sont les données de la table, les fichiers FRM sont la définition de la table et le fichier MYI les indices de la table. Il existe également le fichier ibdata spécifié dans le fichier my.ini, qui est le fichier de table InnoDB. Vous devez être un administrator pour pouvoir accéder au dossier Document and Settings ou au dossier Program Files.

  1. Ouvrez l'Explorateur de fenêtres (touche Windows + E) ou Ouvrir mon ordinateur et accédez au dossier de données où résident vos fichiers de base de données.
  2. Je vous recommande de copier tous les dossiers du dossier de données plutôt que d'en choisir quelques-uns à copier. Copiez les dossiers de la base de données et le fichier ibdata (NE COPIEZ PAS LES fichiers ib_logfile (x)!) Notez que le fichier ibdata peut ne pas se trouver au même emplacement que les fichiers de données. Pour savoir où il pourrait être, lisez Comment trouver des fichiers de base de données MYSQL dans Windows.
  3. Accédez à l'ordinateur cible, Ouvrir les services système. (Tapez services.msc dans la zone de saisie "Rechercher le programme et les fichiers" du menu Windows)
  4. Dans le panneau droit de la fenêtre Services, faites défiler la liste et recherchez le nom "MYSQL". Sélectionnez MYSQL et cliquez avec le bouton droit de la souris et cliquez. Une fois qu'il sera arrêté, son statut deviendra vide au lieu de.
  5. De même, recherchez l'emplacement du dossier de données. Une fois que vous l'avez localisé, je vous recommande de sauvegarder le dossier ou simplement de le renommer. Collez les dossiers et le fichier ibdata que vous avez copiés de l'ordinateur source vers le dossier de données.
  6. Revenez à la fenêtre Services et sélectionnez de nouveau MYSQL. Faites un clic droit dessus et cliquez pour reprendre le service MYSQL.
  7. Ouvrez l'administrateur MYSQL et connectez-vous à votre serveur de base de données et vous devriez pouvoir voir votre base de données transférée avec leurs données.
23
John Woo

Je pense que la gestion des fichiers de MySQL est assez simple par défaut. Créez une nouvelle base de données simple et copiez les fichiers récupérés dans le sous-dossier mysql qui est créé en réponse, en remplaçant tous les fichiers de base de données créés. Si cela ne fonctionne pas, créez une table dans la nouvelle base de données pour avoir une idée de ce qui pourrait être nécessaire.

4
wallyk

Moi aussi, j'ai été confronté au même problème et j'ai passé près de deux à trois jours à résoudre le problème. J'en avais marre de toutes les autres réponses déroutantes que j'ai vues. Enfin, j'ai récupéré toutes mes données de mon ancien lecteur et je peux maintenant y accéder avec succès dans ma nouvelle installation de Microsoft Server.

Cela pourrait aider quelqu'un d'autre.

Les problèmes rencontrés:

  1. Recherche de fichiers de base de données dans l'ancien disque dur:
    Réponse: Suivez les instructions données dans ce lien:
    https://www.quora.com/Where-is-the-database-stored-in-the-Microsoft-SQL-server/answer/Allu-Saiprudhvi?prompt_topic_bio=1 =

  2. Si vous ne pouvez pas ouvrir les dossiers de l'ancien disque dur ("La demande n'a pas pu être effectuée en raison d'un message d'erreur de périphérique d'E/S"):
    Réponse: Modifiez le nom du disque correspondant. suivez les instructions données dans ce lien "suivez les instructions données dans ce lien"

  3. Après avoir obtenu les dossiers de base de données, téléchargez d'abord la même version du serveur Mysql que sur l'ancien disque dur, vous pouvez vérifier la version mentionnée avec le nom du dossier lui-même.

  4. Après avoir téléchargé la même version, collez les dossiers de base de données dans le dossier de données comme indiqué dans l'instruction 1 ci-dessus.

  5. Arrêtez et démarrez le serveur Mysql dans les services:
    Réponse: Pour savoir comment redémarrer un serveur mysql suivez les instructions données dans le lien:
    https://www.quora.com/How-do-I-start-the-MySQL-server-in-Windows-10/answer/Allu-Saiprudhvi?prompt_topic_bio=1 =

  6. Vous pouvez maintenant le vérifier, cela devrait rendre les données de la base de données accessibles avec SQL Server.

MERCI

1
Allu Saiprudhvi