web-dev-qa-db-ja.com

macOSでbrewによってインストールされている場合、MySQL 5.6をアンインストールする方法は?

次のコマンドを発行してMySQLをインストールしました。

$ brew install mysql56
$ brew services start [email protected]

今、私はそれにアクセスできません:

$ mysql -uroot
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)

それをアンインストールして、次のことを試したい:

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

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*

(Restart computer)

今は動作します。

もう一度インストールして実行すると:

brew intall mysql56
brew services start [email protected]

それが示している:

Service `[email protected]` already started, use `brew services restart [email protected]` to restart.

しかし、プロセスリストでそれを見つけることができません。

4
zseikyocho

スタックオーバーフローへ。

私はこれに答えますが、これは既に質問されているので、必ず 既存の質問を確認してください にしてください。

これを試して

brew uninstall --force mysql

または Google からの最初の結果 CoderWall からの最初の結果

実行中のインスタンスを見つける

ps -ax | grep mysql | grep -v grep

# OR for only the running `PID`

ps -ef | grep mysql | grep -v grep | awk '{print $2}'

# OR this If you have this on your machine, I recommend using 

pgrep -f mysql

強制終了プロセスを実行している場合

kill 24024824082408   # change this number to what was returned in the grep 

データベースデータを保存する

これにより、MySQLデータフォルダーがデスクトップのフォルダーmysqldataに保存されます。

# I backup my data from mysql to my desktop
mkdir ~/Desktop/mysqldata/

# data
cp -r /usr/local/mysql/data ~/Desktop/mysqldata

移行のためにMySQL Workbenchデータを保存します。

# MySQL workbench active sessions including the unsaved query windows
cp -r ~/Library/Application\ Support/MySQL/Workbench/sql_* ~/Desktop/mysqldata

# data this is a log containing queries that were logged at some point, more of a `just in case`
cp ~/Library/Application\ Support/MySQL/Workbench/log/sql_actions_unconnected.log ~/Desktop/mysqldata/sql_actions_unconnected.sql

# data of user snippets as people forget about this.
cp /Users/`id -un`/Library/Application\ Support/MySQL/Workbench/snippets/User\ Snippets.txt ~/Desktop/mysqldata/UserSnippets.txt

削除とクリーンアップ

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/My*
launchctl unload -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
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*

編集(該当する場合)vi /etc/hostconfigと行を削除MYSQLCOM=-YES-

MySQLプロセスが強制終了されていることを確認する場合は、コンピューターを再起動します。mysqlを実行してみます。動作しないはずです。

rmの一部が存在しないだけで失敗することを心配する必要はありません。

お役に立てれば幸いです。

8
JayRizzo