DB プログラミング

【MySQL】アンインストール時に"No such keg: /usr/local/Cellar/mysql"が発生したときの解決法

数年前にMacにMySQLを入れたもののユーザーパスワードを忘れてしまいログインできなくなりました。
MySQLのバージョンアップも兼ねて一度アンインストールしようとするもエラーになりハマったので、解決策の備忘録。
同じような状況に陥っている方の参考になれば幸いです。

環境

参考までに以下の環境で実行しました。

  • OS
    • macOS Ventura 13.6
  • HomebrewでMySQLをインストールした
  • MySQLのバージョンは5.6

まずはHomebrewのエラーが検知されないことを確認します。
Your system is ready to brew.となっていれば問題ありません。

$ brew doctor
Your system is ready to brew.

続いてbrew uninstallを実行するもエラーになります。

$ brew uninstall mysql
Error: No such keg: /usr/local/Cellar/mysql

解決策

バージョン指定をしたコマンドを実行することで解決できました。
OSのアップデートでMySQLの標準バージョンが変更されたことにより、旧バージョンのアンインストール時にバージョン指定が必要となった模様です。

$ brew uninstall mysql@5.6 
Uninstalling /usr/local/Cellar/mysql@5.6/5.6.47... (343 files, 155.2MB)

必要に応じて関連情報の削除を行います。

データの削除
$ rm -rf /usr/local/var/mysql/
関連ファイルの削除
// データフォルダを削除
$ sudo rm -rf /usr/local/var/mysql

// バージョン指定の有無などファイル名が異なる場合があります。
$ sudo rm ~/Library/LaunchAgents/homebrew.mxcl.mysql@5.6.plist

MySQLのアンインストールを確認できました。

$ mysql --version 
zsh: command not found: mysql

再インストール

それでは改めてHomebrewでMySQLをインストールします。
ちなみにインストールは環境によって時間がかかる場合があります。

私の環境で10分くらいかかりました

$ brew install mysql
...
==> Downloading https://ghcr.io/v2/homebrew/core/mysql/manifests/8.1.0
################## 100.0%
...

無事、最新バージョンのインストールを確認できました。

$ mysql --version
mysql  Ver 8.1.0 for macos13.6 on x86_64 (Homebrew)
  • この記事を書いた人

Usagi

▶︎ 新米エンジニア ▶︎ Usagi Blog 運営 ▶︎ 関西在住 ● 主にプログラミングについての学びを発信中

-DB, プログラミング