Comment désinstaller MySQL?

161

J'ai installé MySQL avec sudo apt-get. Maintenant, je dois le supprimer de mon système.

Comment puis je faire ça?

homme chauve-souris
la source

Réponses:

257

Pour supprimer complètement mysql de votre système, entrez simplement terminal

sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-core-* mysql-client-core-*
sudo rm -rf /etc/mysql /var/lib/mysql
sudo apt-get autoremove
sudo apt-get autoclean
Ketan Patel
la source
1
Je suppose que ça ne marche pas. Après que je fais ces étapes, j'ai essayé: sudo apt-get install mysql-client-core-5.5. Mais il montre: mysql-client-core-5.5 is already the newest version. 0 upgraded, 0 newly installed, 0 to remove and 97 not upgraded.. Est-ce que cela signifie toujours que mysql réside dans mon pc?
Batman
Essayez sudo dpkg --purge mysql-serveur mysql-client mysql-common
Ketan Patel
1
Si j'essaie sudo dpkg --purge mysql-server mysql-client mysql-commonje reçois: dpkg: warning: there's no installed package matching mysql-server dpkg: warning: there's no installed package matching mysql-client dpkg: warning: there's no installed package matching mysql-common . Je suis un peu confus maintenant. Est-ce que cela mysqla été enlevé ou pas?
Batman
4
cela ne me suffisait pas, il fallait encore faire quelques choses: stackoverflow.com/a/16178696/447661
Mihai Rotaru
3
Cela ne suffisait pas non plus pour moi - pour moi aussi, la réponse ici a plutôt fonctionné: stackoverflow.com/a/16178696/368896
Dan Nissenbaum
64

toutes les solutions ci-dessus sont correctes mais j’essaierais avec

sudo apt-get remove --purge mysql *
sudo apt-get autoremove
sudo apt-get autoclean

Cela désinstallera tous les paquets liés à mysql.

Naveen
la source
10
C'est le moyen le plus simple et le plus simple de se débarrasser de tout ce qui est lié à mysql. Bien que le caractère générique ici corresponde à peu près à tout paquet contenant «mysq» dans son nom, vous voudrez peut-être spécifier sudo apt-get remove --purge -s 'mysql*'d'être plus spécifique.
geerlingguy
Détaché sur l'utilisation d'une expression régulière plus spécifique. J'ai fini par utiliser la regex de '^ mysql- ' Au départ, j'allais utiliser mysql , mais j'ai découvert qu'il contenait une tonne de choses sans rapport ... comme: Remarque, en sélectionnant 'mysql-testsuite' pour regex '^ mysql * 'Remarque, en sélectionnant' mysql-server 'pour regex' ^ mysql * 'Note, en sélectionnant' mysql-server-core 'pour regex' ^ mysql * 'Note, en sélectionnant' mysqmail 'pour regex' ^ mysql * ', en sélectionnant' mysqmail-pure-ftpd-logger 'pour les expressions rationnelles' ^ mysql * '
MaasSql
J'ai essayé toutes les commandes listées ici et après, si je tape 'mysql' dans le terminal et que j'appuie deux fois sur la touche de tabulation, je vois encore une option pour mysql, cela signifie-t-il quelque chose? > mysql mysqld mysql_upgrade mysqlcheck mysql_install_db
GoProCameraByGoPro
Cela n'a fonctionné que pour moi lorsque j'ai utilisé sudo apt-get -f autoremove
Simon D
cela me donne quelques erreurs comme `E: Impossible de localiser le paquet mysql`. mon installation semble un peu foirée. et il est effrayant de ne pas pouvoir le réinstaller.
phil294
24

Cela supprimera mysql 5.6 d'ubuntu 15.04

sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo apt-get autoremove
sudo apt-get autoclean
sudo rm -rf /var/lib/mysql
sudo rm -rf /etc/mysql
Vasko
la source
1
Supprimer manuellement les répertoires me paraissait nécessaire (donc +1), peut-être parce que mes répertoires étaient des liens symboliques?
Jonathan
1
J'avais l'impression que votre réponse était la plus concise, alors je voulais faire un commentaire ici. J'ai fait quelque chose de similaire pour mariadb, mais j'ai remarqué que j'avais un service système en suspens. J'ai dû l'enlever en utilisant: superuser.com/a/936976/260852
Mario Olivio Flores
1
Merci, cela fonctionne également pour MySQL 5.7 sur Ubuntu 16.04.
Approuvé le
6

Vous devez d’abord arrêter le service de votre serveur mysql.

sudo service mysql stop

Ensuite, vous pouvez utiliser la commande purge pour désinstaller

sudo apt-get purge mysql-server mysql-client

Remarque: le ci-dessus est basé sur votre liste de paquets. J'ai installé le serveur et le client. Cette volonté pour votre convineient

Vijayaprakash P
la source
Arrêter le service MySQL était la clé pour moi. Je le faisais tourner et je continuais à avoir une erreur: dpkg: unrecoverable fatal error, aborting: fork failed: Cannot allocate memory E: Sub-process /usr/bin/dpkg returned an error code (2) arrêter MySQL, puis courir sudo dpkg --configure -a suivi de sudo apt-get remove --purge mysql* travail pour moi.
tww0003
4

Je n'utilise pas beaucoup Ubuntu, mais ce que je pense que vous devriez essayer, c'est ce que j'ai fait.

J'ai d' abord tapé dans cette ligne de commande: sudo apt-get remove --purge mysql-server mysql-client mysql-common,

puis suivi avec ceci ci-dessous: sudo apt-get autoremove

et enfin tapé ceci: sudo apt-get autoclean.

J'ai trouvé qu'il a été supprimé.

Tareto
la source
3

J'ai oublié le mot de passe root MySQL et je devais le réinitialiser. J'ai essayé cela , mais cela n'a pas fonctionné, car il n'arrêtait pas de dire "ne peut pas écrire de journaux" ou quelque chose de similaire.

Ma solution consistait à supprimer complètement MySQL de Ubuntu 13.10 et à effectuer une nouvelle installation.

sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo apt-get autoremove
sudo rm -rf /var/lib/mysql

Je devais exécuter la dernière commande car Ubuntu conserve parfois certaines bibliothèques, même si vous essayez de toutes les purger.

Maintenant, j'utilise cette commande pour installer le serveur et le client MySQL:

sudo apt-get install mysql-client mysql-server
Tennom
la source
1

Quand j'ai essayé, sudo apt-get purge mysql*ça n'a pas marché.

Purgés mysql5 avec:

sudo apt-get purge mysql-*

Puis pour le nettoyage:

sudo apt-get autoremove
sudo apt-get autoclean
Le sage
la source
0

Désinstaller complètement mysql:

sudo -i
service mysql stop
killall -KILL mysql mysqld_safe mysqld
apt-get --yes purge mysql*
apt-get --yes autoremove --purge
apt-get autoclean
deluser --remove-home mysql
delgroup mysql
rm -rf /etc/apparmor.d/abstractions/mysql /etc/apparmor.d/cache/usr.sbin.mysqld /etc/mysql /var/lib/mysql /var/log/mysql* /var/log/upstart/mysql.log* /var/run/mysqld ~/.mysql_history
updatedb

Basé sur cette réponse et beaucoup d'autres ...

Simhumileco
la source
0

Essayez ceci, il effacera complètement chaque fichier de MySQL de votre système:

sudo service mysql stop  #or mysqld
sudo killall -9 mysql
sudo killall -9 mysqld
sudo apt-get remove --purge mysql-server mysql-client mysql-common
sudo apt-get autoremove
sudo apt-get autoclean
sudo deluser -f mysql
sudo rm -rf /var/lib/mysql
sudo apt-get purge mysql-server-core-5.7
sudo apt-get purge mysql-client-core-5.7
sudo rm -rf /var/log/mysql
sudo rm -rf /etc/mysql
Akshay Pethani
la source