使用brew安装mysql遇到的若干问题的解决方案

用homebrew安装mysql 遇到以下三种情况的解决

ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)

先通过ps aux |grep mysq* 查看mysql是否启动
启动: 证明你的mysql初始化失败,通过以下代码可以解决
不启动: 启动mysql 服务器就好,可以通过mysql.server start或者brew services start mysql启动

1
2
3
$ launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist
$ rm -rf /usr/local/var/mysql
$ mysqld --initialize

Access denied for user ‘root‘@’localhost’

先把mysql的所有服务关掉

1
2
3
4
5
6
$ mysqld --skip-grant-tables
$ mysql -u root mysql
$mysql> update user set authentication_string=password('my_password') where user='root';
$mysql> FLUSH PRIVILEGES;
$mysql>exit;
$mysql.server restart

the server quit without updating PID file

如果不小心kill mysql进程导致这个错误,可以 rm *.err /usr/local/mysql/data/,然后mysql.server start即可

参考资料:问题1参考 , 问题2参考

最后备注一下brew安装后mysql路径:
1. 执行路径: /usr/local/bin/mysql
2. mysql存放路径: /usr/local/Cellar/mysql
3. mysql数据存放路径: /usr/local/var/mysql