web-dev-qa-db-fra.com

Si je réinstalle mysql, est-ce que je perds mes bases de données?

J'ai installé MySQL sur mon hôte local. Que se passe-t-il si j'ai un problème avec mysql et que je veux le réinstaller à nouveau? Est-ce que je perds mes bases de données existantes?

14
user3018393

Non, la réinstallation de mysql-server ne supprimera pas vos fichiers de base de données, mais uniquement les fichiers de package de mysql-server. Vous pourrez accéder à vos fichiers (base de données) après avoir réinstallé le serveur.

Pour purger et installer mysql-server:

Sudo apt-get purge mysql-server
Sudo apt-get install mysql-server

Si vous souhaitez également supprimer la base de données, vous devez d'abord la supprimer avant de supprimer mysql. Pour supprimer la base de données proprement, sur l'invite mysql, tapez:

drop database <database_name>

J'ai trouvé un autre moyen de supprimer les fichiers de base de données, mais je ne suis pas sûr qu'il s'agisse d'un moyen propre de supprimer la base de données. Adoptez-le donc avec une pincée de sel:

De ne question sur stackoverflow :

Il (l’emplacement des fichiers de base de données) est spécifique à l’installation, mais si vous avez/var/lib/mysql, alors:

  • Les tables MyISAM seront stockées dans des fichiers individuels dans/var/lib/mysql/databasename /
  • InnoDB réside dans/var/lib/mysql/ibdata (sauf si vous avez utilisé le paramètre innodb_per_table, auquel cas il est stocké de la même manière que pour les tables MyISAM)

Vérifiez donc l’emplacement de vos bases de données à ces deux emplacements et supprimez le répertoire des bases de données (les privilèges de superutilisateur sont nécessaires pour la lecture et la suppression).

11
jobin

Utilisez apt-get remove. N'utilisez pas apt-get purge, qui supprimera les fichiers de /var/lib/mysql.

0
Zahid Gill

C'est une vieille question, mais néanmoins, voici mes 5 ¢:

  1. Faites d'abord une sauvegarde de la base de données, par exemple, en utilisant mysqldumpname__.
  2. Maintenant, faites Sudo apt-get purge mysql-server mysql-server-5.7. Il vous demandera si vous voulez vraiment supprimer les fichiers de la base de données, cliquez sur Yesname__
  3. Réinstallez mysql en utilisant Sudo apt-get install mysql-server mysql-server-5.7
  4. Démarrer la base de données mysql
  5. Recréez la base de données et son utilisateur à l'aide de l'utilitaire de ligne de commande mysqlname__
  6. Importez le dump depuis votre sauvegarde

Vous pouvez vous demander à quoi sert toute cette procédure: Il existe des cas où la base de données mysql a eu beaucoup de transactions importantes et occupe beaucoup d’espace sur le disque. Détruire et reconstruire la base de données est un moyen de la réduire à nouveau.

0
jknappen