Homebrew MySQL 错误:错误 1018(HY000):无法读取“。”的目录(errno:13)

Homebrew MySQL 错误:错误 1018(HY000):无法读取“。”的目录(errno:13)

我已经在 Snow Leopard Mac OS 10.6 上使用 Homebrew 安装了 MySQL。我已经运行了它提到的命令:

unset TMPDIR
mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

但是当我连接并尝试列出数据库(或采取任何其他操作)时出现错误:

$ mysql
mysql> show databases;
ERROR 1018 (HY000): Can't read dir of '.' (errno: 13)

我尝试搜索错误答案,但找不到任何能帮助我解决此问题的内容。我需要做什么才能正确设置?

仅供参考:我可能曾经手动安装过 MySQL。不确定是否还有任何冲突的文件。

答案1

看起来我之前的 MySQL 安装确实存在冲突。看起来它甚至还在运行。

launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql
brew uninstall mysql

sudo launchctl unload /Library/LaunchDaemons/com.mysql.mysqld.plist
sudo rm /Library/LaunchDaemons/com.mysql.mysqld.plist

本教程帮助我删除了以前安装的所有痕迹:

sudo nano /etc/hostconfig
# remove this line: MYSQLCOM=-YES-

sudo rm /usr/local/mysql
sudo rm -rf /usr/local/mysql*
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
sudo rm -rf /Library/Receipts/mysql*
sudo rm -rf /Library/Receipts/MySQL*
sudo rm /etc/my.cnf

然后我通过 homebrew 重新安装了 MySQL,一切都正常:

brew install mysql
unset TMPDIR
mysql_install_db --verbose --user=`whoami` --basedir="$(brew --prefix mysql)" --datadir=/usr/local/var/mysql --tmpdir=/tmp
ln -sfv /usr/local/opt/mysql/*.plist ~/Library/LaunchAgents
launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

相关内容