背景
多年前帮朋友写过一个 PHP 的项目用过 Mysql,后来硬盘空间不够了,所以卸载了。当时只是卸载没有清理干净,毕竟默认情况下卸载 Mysql 是不会自动删除db文件夹的,于是今天又有相关需求再次安装时,翻车了…
(HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (38)
解决姿势
起初以为mysql.sock这个文件没有,另外brew services restart mysql
再怎么启动都也不明显报错……于是各种操作配置,一顿搞还是连不上。于是怒看 Log…
上图是/usr/local/var/mysql/KunyinTang.local.err
中发现的,看上去跟我之前那个版本不兼容导致安装后服务没启动……
于是,一顿操作卸载并删除了所有相关的老的、新的 mysql 文件……整理的操作如下:
cd /usr/local/etc
rm -rf my.cnf my.cnf.default
# 旧的数据文件如果有用要记得保存一份!
sudo rm -rf /usr/local/mysql
sudo rm -rf /usr/local/var/mysql
sudo rm -rf /Library/StartupItems/MySQLCOM
sudo rm -rf /Library/PreferencePanes/My*
sudo 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
验证效果
删完之后再用brew装一遍,问题解决了……
brew install mysql
# 看看是不是启动了
lsof -i :3306
再然后就可以愉快的玩了……