Comment désinstaller MySQL de Mac OS X?

208

J'ai accidentellement installé la version PowerPC de MySQL sur mon Mac Intel dans Snow Leopard, et elle s'est installée sans problème mais bien sûr ne fonctionne pas correctement. Je n'ai tout simplement pas fait assez attention. Maintenant, lorsque j'essaie d'installer la bonne version x86, il indique qu'il ne peut pas installer car une version plus récente est déjà installée. Une requête Google m'a amené à effectuer ces actions / supprimer ces fichiers pour le désinstaller:

sudo rm /usr/local/mysql
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/MySQL*
rm -rf ~/Library/PreferencePanes/MySQL*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*

Et enfin supprimé la ligne MYSQLCOM = -YES- de /etc/hostconfig

Ils n'ont pas semblé aider du tout. Je reçois toujours le même message à propos de l'existence d'une version plus récente. J'ai essayé d'installer une version encore plus récente (la version bêta actuelle) et cela m'a également donné le même message à propos d'une version plus récente déjà installée. Je ne peux pas le désinstaller du volet Prefs car je n'ai jamais installé le PrefPane également.

Joseph Ravenwolfe
la source
30
Les lignes sudo rm -rf avec des caractères génériques sont un peu irresponsables. Surtout lorsque vous diffusez le net assez largement pour supprimer tout ce qui commence par les lettres "My" - MySQL n'a pas la propriété exclusive du mot "My" dans son titre.
Eric Goldberg
6
Je suggérerais également de sauvegarder / usr / local / mysql / data en premier - beaucoup de gens pourraient ne pas réaliser que c'est là que mysql conserve ses données sur mac.
Michael Scott Cuthbert

Réponses:

223

Essayez de courir aussi

sudo rm -rf /var/db/receipts/com.mysql.*
Sophie Alpert
la source
4
aussi sudo rm -rf /Library/StartupItems/MySQLCOMs'il existe
Kolob Canyon
35

J'ai également eu des entrées dans:

/Library/Receipts/InstallHistory.plist

que je devais supprimer.

rm-rf
la source
De quel type d'entrées s'agissait-il? J'espère que c'était juste dans les anciennes versions mais je ne vois rien de nommé mysql là-dedans.
Termato
21

Si vous avez installé mysql via brew, nous pouvons utiliser la commande pour désinstaller mysql.

$ brew uninstall mysql

Uninstalling /usr/local/Cellar/mysql/5.6.19...

Cela a fonctionné pour moi.

bapu
la source
4
Je souhaite ... Je supprime ma version dmg de 10.8 pour pouvoir installer la version brew! :-)
dantiston
1
Supprimez également "export PATH =" / usr/local/opt/[email protected]/bin: $ PATH "" de ~ / .zshrc ou ~ / .bash_profile ou ~ / .bashrc.
Himanshu Tanwar du
11
ps -ax | grep mysql

* arrêter et tuer tous les processus MySQL

brew remove mysql
brew cleanup

sudo rm /usr/local/mysql
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /usr/local/mysql*
sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/MySql*

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

modifier /etc/hostconfiget supprimer la ligneMYSQLCOM=-YES-

rm -rf ~/Library/PreferencePanes/My*    
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /private/var/db/receipts/*mysql*

* redémarrez votre ordinateur juste pour vous assurer que tous les processus MySQL sont tués essayez d'exécuter mysql, cela ne devrait pas fonctionner

Victor
la source
J'avais installé mysql 5.6 en utilisant brew. Faire brew remove mysqlme donnait une erreur: "Erreur: aucun tel fût: / usr / local / Cellar / mysql". J'ai donc dû faire brew uninstall [email protected]. De plus, j'ai dû supprimer "export PATH =" / usr/local/opt/[email protected]/bin: $ PATH "" du profil bash (~ / .zshrc pour mon cas)
Himanshu Tanwar
10

Mis à part la longue liste de commandes de suppression dans votre question, qui semble assez complète dans mon expérience récente de ce problème, j'ai trouvé mysql.sock fonctionnant dans / private / var et l'ai supprimé. j'ai utilisé

find / -name mysql -print 2> /dev/null

... pour trouver tout ce qui ressemblait à un répertoire ou un fichier mysql et a supprimé la plupart de ce qui est apparu (à l'exception des modules d'accès Perl / Python). Vous devrez peut-être également vérifier que le démon ne s'exécute pas encore à l'aide du moniteur d'activité (ou sur la ligne de commande à l'aide ps -A). J'ai trouvé que mysqld fonctionnait toujours même après la suppression des fichiers.

mblackwell8
la source
1
Vous pouvez (et dans ce cas, probablement devriez) utiliser -inamesi votre findsupporte pour effectuer une recherche insensible à la casse
damd
4

J'ai également eu un fichier de configuration dans /etc/my.cnf que je devais supprimer sur mon installation Mac OS X Snow Leopard

Dirk de Kok
la source
4

Cela peut être exagéré, mais l'historique de vos commandes MySQL peut également être effacé de:

~/.mysql_history
mhoeffner
la source
3

Vous devez identifier où MySQL a été installé avant d'essayer de le supprimer.

J'utilise toujours le guide Hivelogic pour installer sous Mac OS X qui construit MySQL à partir des sources. Lors de la configuration de la build, vous pouvez spécifier un répertoire sous lequel installer MySQL avec le paramètre --prefix . Vous devez vous assurer que le répertoire n'existe pas et tenter d'installer à partir de la source.

./configure --prefix=/usr/local/mysql --with-extra-charsets=complex \
--enable-thread-safe-client --enable-local-infile --enable-shared \
--with-plugins=innobase
Brian Lyttle
la source
Ancienne réponse, je sais, mais elle est apparue dans une tâche de révision . Vous devriez peut-être ajouter comment identifier où mysql a été installé, pas seulement comment l'installer. En l'état, cela ne répond pas vraiment à la question.
Mike
3

Vous devez également vérifier / var / db / receipts et supprimer toutes les entrées contenant com.mysql. *

L'utilisation de sudo rm -rf /var/db/receipts/com.mysql.* n'a pas fonctionné pour moi. J'ai dû aller dans var / db / receipts et supprimer chacun séparément.

Dave
la source
0

Pour moi, j'avais installé MariaDB il y a des années en utilisant homebrew. La procédure de désinstallation correcte était la suivante: désinstallation de mariadb.

rmc
la source
0

Supprimer complètement MySQL

Ouvrez le terminal

Utilisez mysqldumppour sauvegarder vos bases de données

Vérifiez les processus MySQL avec:

ps -ax | grep mysql

Arrêtez et tuez tous les processus MySQL

Analysez MySQL sur HomeBrew:

brew remove mysql
brew cleanup

Supprimer des fichiers:

sudo rm /usr/local/mysql
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /usr/local/mysql*
sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*

Déchargez la précédente connexion automatique MySQL:

launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

Supprimer la configuration MySQL précédente:

subl /etc/hostconfig` 
# Remove the line MYSQLCOM=-YES-

Supprimez les préférences MySQL précédentes:

rm -rf ~/Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm -rf /private/var/db/receipts/*mysql*

Redémarrez votre ordinateur juste pour vous assurer que tous les processus MySQL sont tués

Essayez d'exécuter mysql, cela ne devrait pas fonctionner

Markandayan P
la source
0

J'ai aussi trouvé

/Library/LaunchDaemons/com.oracle.oss.mysql.mysqld.plist

après avoir utilisé toutes les autres réponses ici pour désinstaller MySQL Community Server 8.0.15 d'OS X 10.10.

float13
la source
0

Version du système d'exploitation: 10.14.6 Version MYSQL: 8.0.14

Aller aux préférences système -> MYSQLentrez la description de l'image ici

Arrêter le serveur MySQL

entrez la description de l'image ici

Une option sera montrée ici pour désinstaller MYSQL 8 après l'arrêt du serveur Mysql

maulik trapasiya
la source
-8

sudo find / | grep -i mysql

Cela a fonctionné comme un charme pour moi. Je viens de parcourir la liste et de m'assurer que tout ce qui concerne MySQL est supprimé.

PaulD
la source
5
Cela a fini par être très mauvais pour moi, car il a trouvé des choses comme les images MySQL utilisées par Coda 2, ainsi que certains fichiers dans Adobe Bridge.
Ian128K
2
plus rapide:sudo find / -iname "*mysql*"
bfontaine
2
Oui, ne faites pas ça .. cela efface toutes vos autres dépendances de programme. Argh, j'ai rendu le clavier heureux .. j'ai perdu beaucoup de conneries.
John Drefahl
2
C'est une très mauvaise suggestion. J'ai ruiné mon système. Il a supprimé tout fichier contenant mysql dans leur nom. Il a même corrompu la suite pro et d'autres logiciels. Maintenant, même si vous réinstallez mysql, mais j'obtiens des erreurs lorsque j'essaie de me connecter avec la suite pro. Veuillez signaler cette réponse et la faire supprimer avant que de nombreuses autres personnes ne détruisent leur ordinateur. Et s'il vous plaît, suggérez-moi que dois-je faire maintenant?
Alok Kumar
4
Pourquoi est-ce considéré comme une mauvaise idée? Je veux dire que vous devez savoir ce que vous faites. Vous ne devez pas supprimer tout ce que cette commande trouve. Mais le commandement à lui seul ne fait aucun mal. Et m'a beaucoup aidé.
Juuro