mac os Mojave中brew安装的mysql因升级导致无法启动问题的解决

估计是手欠,一不小心把MysqL5.7升到8.0.15,版本高看着就爽啊。
结果是MysqL起不起来了。。。

于是想了各种办法:

  • 办法1:把版本降回去。结果还是不能启动,说的是用到了高版本的文件,需要删除所有的数据重装,这是万万不能接受的。
  • 办法2:看错误日志一个问题一个问题解。结果花了一下午,仍然没有搞定。直到。。。找到这个错误
[ERROR] [MY-013129] [Server] A message intended for a client cannot be sent there as no client-session is attached. Therefore, we're sending the information to the error-log instead: MY-001146 - Table 'MysqL.component' doesn't exist

然后在google上搜“[ERROR] [MY-013129] [Server]”,原来已经有人遇到同样的问题了:

https://bugs.mysql.com/bug.php?id=89267

1. stop 5.7.21
2. swap binaries for 8.0.4
3. start MysqL with skip-networking and skip-grant-tables etc.
4. sudo MysqL_upgrade --no-defaults $(sudo my_print_defaults client | egrep '^--socket' | head -1)
5. restart MysqL

依样画葫芦:

1.brew services stop MysqL
2.MysqLd_safe --user=MysqL --skip-grant-tables --skip-networking &
3.sudo MysqL_upgrade --no-defaults $(sudo my_print_defaults client | egrep '^--socket' | head -1)
4.brew services start MysqL

问题解决

相关文章

方法: 打开一个新的可跨域的chrome窗口实现方法: 1. 打开终...
MacBook Pro 14价格和配置对比 尺寸 SOC	内存&#...
现在给大家介绍一下如何查询MAC的生产日期,希望对你查询MAC...
1、点击【编辑虚拟机设置】,转到【CD/DVD (SATA)】,选中【...
注意:用哪个版本的 Python 运行安装脚本,pip 就被关联到哪...
Mac 安装nvm