brew启动一个旧版本的mysql服务,但如何连接到它?

jslywgbw  于 2023-10-15  发布在  Mysql
关注(0)|答案(1)|浏览(97)

所以我安装了mysqlbrew,我在我的Mac OS上安装了两个版本-
mysql 5.7
mysql 8.0
我把brew link '艾德改成了5.7,所以如果我输入mysql --version,它会给我distro 5.7.26.
问题就在这里。现在,如果我键入brew services list,则有两个服务mysql stopped[[email protected]](https://stackoverflow.com/cdn-cgi/l/email-protection) stopped

如果我brew services start mysql,那么我sudo mysql在终端,我可以连接到mysql服务器。但它显示服务器示例是8.0。好吧,我猜不像命令行,brew services start XXX不会选择链接的XXX
如果I brew services start [[email protected]](https://stackoverflow.com/cdn-cgi/l/email-protection)和I sudo mysql,则无法成功连接。它给了我错误ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (2)我认为这意味着mysql客户端没有找到一个活动的打开示例。
如何连接到旧版本的本地mysql示例?

iyr7buue

iyr7buue1#

好吧,解决了我自己经过两天的努力。
解决方案是,如果我想运行本地mysql 5.7示例,我需要完全删除任何系统mysql 8.0。和mysql 5.7文件夹,以及从brew中删除公式
最后只重新安装mysql 5.7
首先卸载所有版本。

brew uninstall mysql
brew uninstall [email protected]

然后清除剩余的碎屑。
对于英特尔:

rm -rf /usr/local/var/mysql
rm /usr/local/etc/my.cnf

对于Apple Silicon:

rm -rf /opt/homebrew/var/mysql/
rm /opt/homebrew/etc/my.cnf

然后重新安装、链接并启动服务。

brew install mysq[email protected]
brew link --force [email protected]
brew services start [email protected]

另外,在Apple Silicon上,如果你得到这样的错误:

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

当使用mysql -uroot连接到刚启动的服务器时,请尝试使用MySQL的打包服务器启动工具:

brew services stop [email protected]
mysql.server start
mysql -uroot

https://medium.com/@at0dd/install-mysql-5-7-on-mac-os-mojave-cd07ec936034中所示

相关问题